【发布时间】:2019-10-01 19:42:06
【问题描述】:
随着TypeScript 3.4 的出现,我们现在有了const 上下文。当您想为函数的参数 (-s) 或类似参数指定有效常量列表而不必命名每个参数时,这会非常有用:
export const validValues = [
'Audi',
'BMW',
] as const;
我想用这种语法来代替用“虚拟名称”定义字符串文字的传统方式:
export const AUDI = 'Audi';
export const BMW = 'BMW';
使用 Visual Studio Code,我不知道如何使用字符串索引而不是数字索引从 validValues 访问这些文字。
编写validValues[... 将使Visual Studio Code 正确建议validValues[0] 或validValues[1],因为validValues 的类型是一个二元素数组(或元组)。然而,这不像写 `validValues["Audi"] 那样可读。
这是 Visual Studio Code 自动建议可用值的图像。
不幸的是,它没有 VS Code 提示,因为它在语义上是错误的(数组是数字索引的),因此将返回 undefined。
这只是白日梦还是有合适的语法?
【问题讨论】:
标签: visual-studio-code typescript3.0