2017-05-25 102 views
1

我正在使用Webpack將AngularJS與Typescript捆綁在一起(默認安裝建議爲here),我不能包含沒有默認導出的模塊,例如ui-bootstrap。諸如ui-router之類的模塊沒有這樣的問題,因爲它們的類型提到了默認導出。沒有默認導出的Typescript + AngularJS + Webpack模塊

JS代碼工作:

import * as angular from 'angular'; 
import router from 'angular-ui-router'; 
import uibootstrap from 'angular-ui-bootstrap'; 

angular.module('app', [uirouter, uibootstrap]); 

然而在打字稿相同的代碼(目標:ES6,模塊:ES6,相同的WebPack導向提及的那些的所有設定)下降錯誤:

Module "node_modules/@types/angular-ui-bootstrap/index" has no default export.

使用angular.module('app', [uirouter, 'ui.bootstrap']);而不是拋出'ui.bootstrap'未找到錯誤。

回答

0

似乎用一個簡單的import 'angular-ui-router'作品。

1

您可以在您的tsconfig.json中將allowSyntheticDefaultImports設置爲true以繼續導入import uibootstrap from 'angular-ui-bootstrap';,就好像angular-ui-bootstrap具有默認導出一樣。

"compilerOptions": { 
    "allowSyntheticDefaultImports": true 
} 
+0

這似乎是正確的解決方案,但它仍然沒有導入庫,使得「ui.route」包含在我的角度模塊中無法使用。 –

相關問題