获取 Visual Studio 代码,为自定义 Javascript 导入提供智能感知
Get Visual Studio Code to give intellisense for custom Javascript imports
我正在使用 TestComplete 编写自动化测试脚本。 TestComplete 主要支持 Ecmascript 2015,但它有一些问题导致智能感知无法正常工作。
这里有两个代码文件的例子:
文件:UsefulStuffFileName.js
class UsefulStuff {
constructor(initValue) {
this.initValue = initValue;
}
get someValue(){
return this.initValue + " someValue";
}
doStuff(input) {
return input + " stuff done";
}
}
module.exports.UsefullStuff = UsefullStuff;
文件:WorkingHere.js
var useful = require('UsefulStuffFileName');
class WorkingHere {
constructor() {
this.usefullStuff = new useful.UsefulStuff("Hello");
}
doCoolStuff() {
// I want intellisense options when I type the period after this.usefulStuff
// The options would be someValue, doStuff() and initValue.
// |
// |
// V
let myVariable = this.usefullStuff.someValue;
}
}
我认为的怪癖是:
- 导出是通过这种风格完成的:
module.exports.UsefullStuff = UsefullStuff;
。 (这使得它可以与 TestComplete 一起使用。)
- "import"赋值给一个变量(
var useful = require('UsefulStuffFileName');
)
- 对象的"new"ing使用变量访问class(
new useful.UsefulStuff("Hello");
).
有没有配置 Visual Studio 代码来理解这些文件是如何相关的并给我智能感知?
注意:如果我尝试更标准的 import {UsefulStuff} from './UsefulStuffFileName';
,我会收到来自 TestComplete 的错误提示 "Unexpected token import"。
这可以通过以下步骤完成。
将导入更改为如下所示:
var { UsefulStuff } = require('UsefulStuff');
将 class 的实例化更改为如下所示:
this.usefulStuff = new UsefulStuff("Hello");
添加一个名为 jsconfig.json
的文件并将其放入:
.
{
"compilerOptions": {
"baseUrl": "."
}
}
我正在使用 TestComplete 编写自动化测试脚本。 TestComplete 主要支持 Ecmascript 2015,但它有一些问题导致智能感知无法正常工作。
这里有两个代码文件的例子:
文件:UsefulStuffFileName.js
class UsefulStuff {
constructor(initValue) {
this.initValue = initValue;
}
get someValue(){
return this.initValue + " someValue";
}
doStuff(input) {
return input + " stuff done";
}
}
module.exports.UsefullStuff = UsefullStuff;
文件:WorkingHere.js
var useful = require('UsefulStuffFileName');
class WorkingHere {
constructor() {
this.usefullStuff = new useful.UsefulStuff("Hello");
}
doCoolStuff() {
// I want intellisense options when I type the period after this.usefulStuff
// The options would be someValue, doStuff() and initValue.
// |
// |
// V
let myVariable = this.usefullStuff.someValue;
}
}
我认为的怪癖是:
- 导出是通过这种风格完成的:
module.exports.UsefullStuff = UsefullStuff;
。 (这使得它可以与 TestComplete 一起使用。) - "import"赋值给一个变量(
var useful = require('UsefulStuffFileName');
) - 对象的"new"ing使用变量访问class(
new useful.UsefulStuff("Hello");
).
有没有配置 Visual Studio 代码来理解这些文件是如何相关的并给我智能感知?
注意:如果我尝试更标准的 import {UsefulStuff} from './UsefulStuffFileName';
,我会收到来自 TestComplete 的错误提示 "Unexpected token import"。
这可以通过以下步骤完成。
将导入更改为如下所示:
var { UsefulStuff } = require('UsefulStuff');
将 class 的实例化更改为如下所示:
this.usefulStuff = new UsefulStuff("Hello");
添加一个名为
jsconfig.json
的文件并将其放入:
.
{
"compilerOptions": {
"baseUrl": "."
}
}