构造函数重载的typescript intellisense问题
我正在尝试用typescript编写一个插件。我声明了这样一个接口:构造函数重载的typescript intellisense问题,typescript,visual-studio-code,typescript-typings,typescript2.0,Typescript,Visual Studio Code,Typescript Typings,Typescript2.0,我正在尝试用typescript编写一个插件。我声明了这样一个接口: interface Options { options1: string, options2: number, options3: boolean, ... } 此外,我还将其用作此导出类可能采用并重载的选项: export class MyClass { constructor(public options: Options = {} as Options) { // options
interface Options {
options1: string,
options2: number,
options3: boolean,
...
}
此外,我还将其用作此导出类可能采用并重载的选项:
export class MyClass {
constructor(public options: Options = {} as Options) {
// options which can be overload
let {
/* default options: */
option1 = 'option1',
option2 = 2,
option3 = true,
...
}: Options = options as Options;
// overload
this.options.option1 = option1;
this.options.option2 = option2;
this.options.option3 = option3;
}
}
最后我实例化了它
const class1 = new MyClass({
...
})
我正在使用vscode作为我的编辑器。智能感知只给了我这样的提示,这对我来说毫无意义:
interface Options {
options1: string,
options2: number,
options3: boolean,
...
}
MyClass(选项?:选项)
我想应该是这样的:
interface Options {
options1: string,
options2: number,
options3: boolean,
...
}
MyClass(选项?:{options1:string,options2:number…})
有人知道为什么会发生这种情况,以及如何使intellisense按预期工作吗?TypeScript跟踪这一点时存在一个问题。但是,这种方法的一个问题是,当选项很长时,它不会提供完整的细节 现在它实际上运行得很好。你能做的是:
const class1 = new MyClass({
// [Ctrl+space] here
})
它将实际列出带有IntelliSense的选项属性
option1
,option2
等。Thx![Ctrl+space]获取我想要的内容。希望以后能解决这个问题。