【发布时间】:2018-07-29 06:36:10
【问题描述】:
我开始在我正在使用 Visual Studio Code 处理的 Node 项目中使用 TypeScript。我想遵循类似于 Flow 的“选择加入”策略。因此,我将// @ts-check 放在我的.js 文件的顶部,希望为该文件启用TS。最终我想要与 Flow 一样的“linting”体验,因此我安装了插件TSLint,这样我就可以看到 Intellisense 警告/错误。
但是我的文件看起来像:
// @ts-check
module.exports = {
someMethod: (param: string): string => {
return param;
},
};
我的tsconfig.json 文件看起来像...
{
"compilerOptions": {
"target": "es2016",
"module": "commonjs",
"allowJs": true
}
}
我收到此错误:[js] 'types' can only be used in a .ts file.,如下图所示。
我看到 this question 建议在 vscode 中禁用 javascript 验证,但没有显示 任何 TypeScript Intellisense 信息。
我尝试在我的 vscode 设置中将 tslint.jsEnable 设置为 true,如 TSLint 扩展文档中所述,但没有运气。
为了在 TypeScript 中使用 .js 文件并获得 Intellisense 的正确设置是什么,以便我在运行任何 TS 命令之前知道我的代码中的错误是什么?
【问题讨论】:
-
把扩展名改成ts有错误吗?
-
@israel.zinc 将扩展名更改为
.ts按预期显示 TS 错误/警告。我想这可能可行,但我希望更多使用@ts-check的选择加入方法,同时将我的所有扩展保留为.js -
@BuZZ-dEE 可能是这样,但那里的答案并没有解决问题。我在最初的问题中提到了这一点。
-
请考虑将接受的答案更改为正确答案:stackoverflow.com/a/50726464/2333214
标签: javascript typescript visual-studio-code