我在Electron里面有一个Angular2应用程序。现在,我想使用@pokusew/pcsclite
库来使用NFC功能。该库使用本机Node.js模块。
当我尝试需要我的component.ts中的库时,如下所示:
declare var pcsclite: any;
var pcsclite = require('../../../node_modules/@pokusew/pcsclite/');
我得到并且错误说:
错误TS6143:模块' ../.. 39;已经解决了' ../../ lib / pcsclite.js',但是' - allowJs'没有设定。
另一方面,如果我尝试通过index.html中的< \ script> -Tag导入库,我会收到错误消息:
ZoneAwareError 错误:找不到绑定文件。尝试:...
最后,如果我var pcsclite = require('@pokusew/pcsclite');
中的main.js
,那么它可以正常工作,但我无法从我的Angular应用中访问它。
答案 0 :(得分:29)
在allowJs
中添加tsconfig.json
选项,如下所示:
如fabian lauer所述,还添加outDir
选项以指定编译文件的位置:
{
"compilerOptions": {
"outDir": "./built", <--- add this
"allowJs": true, <--- and this
"target": "es5"
},
"include": [
"./src/**/*"
]
}