首页 > 解决方案 > 如何使用 VS Code 设置字符串的智能感知以避免在 JavaScript 中键入无效值

问题描述

当我在 VS Code 中编写内置关键字时,我发现了一个很酷的智能感知功能typeof,它显示了一个特定的选项列表,其中包含返回的所有有效值,typeof如下图所示。

它显示了一个特定的选项列表

在此处输入图像描述

此功能使我们避免在使用该功能时键入无效结果。

所以我想知道我们可以使用 jsdoc 或 eslint 为自定义函数或数组创建智能感知吗?如果没有,是否还有其他工具可以实现这一目标?

var dayOptions = [
  'Monday',
  'Tuesday',
  'Wednesday',
  'Thursday',
  'Friday'
]

function checkDay(option){ // I don't want to let user input values outside the array above
  // code
}

checkDay('Friday') // I want to make an intelliSense list here
checkDay('other') // I want VS Code show me something wrong here

标签: javascriptvisual-studio-codeeslintjsdoc

解决方案


您可以使用 JSDoc 语法:

@param {'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday'} option

在此处输入图像描述

'"other"' 类型的参数不能分配给 '"Monday" 类型的参数 | “星期二” | “星期三” | “星期四” | “星期五”'。


推荐阅读