【发布时间】:2021-04-19 01:38:11
【问题描述】:
在 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 没有将关键字 this 链接到当前对象。这种行为很不方便,因为在另一台 PC 上再次安装 VS 会产生链接。
任何有此经验的人可以给我一行配置来修复 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"
]
}
【问题讨论】:
-
查看 TypeScript 以投射对象
-
@sonEtLumiere 尝试过 TypeScript。同样的行为。
-
这是打字稿的设计行为。 VSCode 使用 ts 来支持 js 语言,因此你看到的结果。
-
@hackape 那么为什么我在另一个 VS Code 安装中看到了不同的行为?
标签: javascript visual-studio-code javascript-intellisense this-keyword