VS Code 没有将关键字 "this" 链接到当前 javascript 对象?
VS Code not linking keyword "this" to current javascript object?
在 VS Code 中,我正在用这段代码制作一个 js 文件
const ObjectX = {
abc(){
},
xyz(){
this.abc()
},
}
当我输入 this.
并按 Ctrl + space
时,我希望 VS Code 建议我将 abc()
作为 this
的成员,但它不会.
当我键入完整行 this.abc()
然后在定义行按 F2
重命名 abc()
时,VS Code 不会将所有对 this.abc()
的调用重命名为嗯。
所有 2 个事实明确表明 VS Code 不会 link 当前对象的关键字 this
。这种行为很不方便,因为在另一台 PC 上再次安装 VS 会执行 links.
任何遇到过这种情况的人都可以给我一行配置来修复 VS Code 吗?
PS1:这只是 VS Code 的糟糕编码体验,而不是 javascript 代码的工作方式!
PS2:我尝试过具有相同行为的 TypeScript。
PS3:我有最新版 VSCode 的智能感知,我的 jsconfig.json
看起来像这样
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"experimentalDecorators": true
},
"exclude": [
"node_modules",
".vscode",
"library",
"local",
"settings",
"temp"
]
}
您的文件扩展名是什么?如果它是 .js 它应该 intellisense this.abc() as javascript.
在VS.Code下打开文件时语言模式显示什么。语言模式显示在右下角。如果它没有显示“JavaScript”作为语言模式,您可以单击它并更改为 JavaScript。默认为自动检测。
您也可以按 Ctrl-K,然后按 M 键调出语言模式。
看这里:https://code.visualstudio.com/docs/languages/overview#_changing-the-language-for-the-selected-file
答案很简单但很难找到:
将此行添加到项目
的tsconfig.json
"compilerOptions": {
....
"noImplicitThis": true
....
}
在 VS Code 中,我正在用这段代码制作一个 js 文件
const ObjectX = {
abc(){
},
xyz(){
this.abc()
},
}
当我输入 this.
并按 Ctrl + space
时,我希望 VS Code 建议我将 abc()
作为 this
的成员,但它不会.
当我键入完整行 this.abc()
然后在定义行按 F2
重命名 abc()
时,VS Code 不会将所有对 this.abc()
的调用重命名为嗯。
所有 2 个事实明确表明 VS Code 不会 link 当前对象的关键字 this
。这种行为很不方便,因为在另一台 PC 上再次安装 VS 会执行 links.
任何遇到过这种情况的人都可以给我一行配置来修复 VS Code 吗?
PS1:这只是 VS Code 的糟糕编码体验,而不是 javascript 代码的工作方式!
PS2:我尝试过具有相同行为的 TypeScript。
PS3:我有最新版 VSCode 的智能感知,我的 jsconfig.json
看起来像这样
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"experimentalDecorators": true
},
"exclude": [
"node_modules",
".vscode",
"library",
"local",
"settings",
"temp"
]
}
您的文件扩展名是什么?如果它是 .js 它应该 intellisense this.abc() as javascript.
在VS.Code下打开文件时语言模式显示什么。语言模式显示在右下角。如果它没有显示“JavaScript”作为语言模式,您可以单击它并更改为 JavaScript。默认为自动检测。 您也可以按 Ctrl-K,然后按 M 键调出语言模式。
看这里:https://code.visualstudio.com/docs/languages/overview#_changing-the-language-for-the-selected-file
答案很简单但很难找到:
将此行添加到项目
的tsconfig.json
"compilerOptions": {
....
"noImplicitThis": true
....
}