【发布时间】:2016-12-02 18:16:36
【问题描述】:
我用普通的 JS 创建了一个共享工作者的简单演示,我决定看看是否可以将其更改为 TS 项目,从一开始我就遇到了一个问题,我不确定它是否与d.ts 文件或其他文件。
我已经安装了@types/sharedworkers 定义(npm install --save @types/sharedworker)。 我正在使用 Typescript 2.1.1。
如果我创建一个简单的类,例如
class MyTestClass {
private worker : SharedWorker;
constructor() {
this.worker = new SharedWorker( 'JS_code_to_load');
}
}
然后我的 IDE (IntelliJ) 会自动完成导入并使其 - 导入 SharedWorker = SharedWorker.SharedWorker;
查看 SharedWorker 文件似乎是有道理的 - Github sharedworker d.ts
但是会发生错误 - TS2339: 类型 '{ new (stringUrl: string, name?: string | undefined): SharedWorker; 上不存在属性 'SharedWorker'原型 SharedWorker; }'
这是 d.ts 文件的问题吗,声明了太多 SharedWorker(命名空间、接口和 var)?
如果导入不同。我之前使用的导入是针对我导入的实际模块,但共享工作器不是您使用 npm 安装的外部模块。
【问题讨论】:
-
既然你已经解决了问题,你能链接到演示结果吗?
标签: javascript typescript typescript2.0