【发布时间】:2017-03-20 18:27:45
【问题描述】:
我在 Angular2-Typescript 应用程序中使用 signalR 时遇到问题。我让它在以前的 Angular 1 应用程序中运行良好。我的问题在于导入。
我有 intellisense 工作,但强类型似乎没有正确映射到原始 js 文件。
在 node_modules 中,我有这两个文件夹(此处为空间编辑):
├───jquery
│ │ jquery.d.ts
│ │ LICENSE.txt
│ │ package.json
│ │ README.md
│ │
│ ├───dist
│ │ core.js
│ │ jquery.js
│
└───signalr
jquery.signalR.js
jquery.signalR.min.js
package.json
signalr.d.ts
jquery.d.ts 文件是这个: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/jquery/jquery.d.ts
signalr.d.ts 文件是这个: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/signalr/signalr.d.ts
注意:我已经编辑signalr.d.ts在最后添加了这个,否则无法导入:
declare var sr : JQueryStatic;
declare module 'signalr'{
export = sr;
}
在 systemjs.config.js 中,我使用它来导入信号器:
map: {
'signalr': 'npm:signalr/jquery.signalR.js'
}
然后在我的组件中使用:
import * as $ from 'signalr'
然后我可以访问智能感知,例如:
但是,也有问题。如果我使用:
console.log($.hubConnection);
我不确定。
对此的任何帮助将不胜感激。
【问题讨论】:
标签: angular typescript