0
是否有任何文檔或一步一步的指南介紹瞭如何做到這一點?如何在打字稿中使用第三方npm模塊(Angular2)
我想舉個例子:我試圖在角度應用中使用包simpl-schema
。我創建了一個新的應用:
ng new ng-ss-test
cd ng-ss-test
npm install --save simpl-schema
在我加入app.component.ts:
let SimpleSchema = require('simpl-schema').default;
現在我已經得到了錯誤:
ERROR /app/app.component.ts (2,20): Cannot find name 'require'.)
所以,我已經聲明要求:
declare var require: any
好的,這實際上是工作。我可以寫東西像
const schema = new SimpleSchema({
但我認爲那不是做的方式。我仍然有警告:
WARNING in ./~/handlebars/lib/index.js
require.extensions is not supported by webpack. Use a loader instead.
@ ./~/message-box/dist/MessageBox.js 13:18-39
@ ./~/simpl-schema/dist/SimpleSchema.js
@ ./~/simpl-schema/dist/main.js
@ ./src/app/app.component.ts
@ ./src/app/app.module.ts
@ ./src/main.ts
@ multi webpack-dev-server/client?http://localhost:4200 ./src/main.ts
當然,我可以通過運行
dts-gen -m simpl-schema
,但我仍然需要require
線,右創建類型信息SIMPL - 舍姆嗎?我想知道在角度上使用第三方npm模塊的正確方法是什麼。
Angular CLI有關於添加第三方庫的文檔https://github.com/angular/angular-cli/wiki/stories-third-party-lib –
好的,這給了我與使用'require'相同的結果。有關'require.extensions'的警告來自'simpl-schema'模塊,因此它必須在那裏修復。我想知道webpack如何知道它必須從'node_modules/simpl-schema'目錄中導入哪些文件。 – MarcS82