Angular 6 - Module not found: Error: Can't resolve 'http' in

Angular 6 - Module not found: Error: Can't resolve 'http' in

我正尝试在 angular 6

中使用 TinCanJS 库

github project

我使用 npm install tincanjs --save

安装了这个包

我在angular.json中导入了如下文件:

"scripts": [
              "./node_modules/tincanjs/node_modules/xhr2/lib/xhr2.js",
              "./node_modules/tincanjs/build/tincan-min.js"
            ]

我也试过如下:

"scripts": [
    "./node_modules/xhr2/lib/xhr2.js",
    "./node_modules/tincanjs/build/tincan-min.js"
]

在我的应用程序组件中,我将 tincan 库导入为普通 javascript 因为它没有键入如下脚本:

import * as TinCan from 'tincanjs';

当我使用 ng serve 构建项目时,我不断收到以下错误:

ERROR in ./node_modules/tincanjs/node_modules/xhr2/lib/xhr2.js
Module not found: Error: Can't resolve 'http' in 'C:\Dev Projects\xAPI Angular Example\xAPIExample\node_modules\tincanjs\node_modules\xhr2\lib'
ERROR in ./node_modules/tincanjs/node_modules/xhr2/lib/xhr2.js
Module not found: Error: Can't resolve 'https' in 'C:\Dev Projects\xAPI Angular Example\xAPIExample\node_modules\tincanjs\node_modules\xhr2\lib'
ERROR in ./node_modules/tincanjs/node_modules/xhr2/lib/xhr2.js
Module not found: Error: Can't resolve 'os' in 'C:\Dev Projects\xAPI Angular Example\xAPIExample\node_modules\tincanjs\node_modules\xhr2\lib'

TincanJS 库依赖于 xhr2。我已经检查了物理文件夹,xhr2.js 文件位于正确的位置。

我想知道我做错了什么? 你能帮忙吗

删除 xhr2

应该是,

"scripts": [
    "node_modules/tincanjs/build/tincan-min.js"
]

用于声明,而不是

import * as TinCan from 'tincanjs';

使用

declare const TinCan: any;