我使用的是JSPM 0.16.42它使用SystemJS,我試過angular-translate和angular-route,它們都在github端點上。導入angular-translate導入空對象
然而,對於兩者的角度引發相同的錯誤
argument module is not a function
:
import AngularRoute from 'angular-route';
angular.module('app', [AngularRoute]);
我使用babel作爲transpiler。我從導入中得到的對象似乎是空的。以下是我config.js
文件的相關部分:
System.config({
baseURL: "/",
defaultJSExtensions: true,
transpiler: "babel",
babelOptions: {
"optional": [
"runtime",
"optimisation.modules.system"
]
},
paths: {
"github:*": "jspm_packages/github/*",
"npm:*": "jspm_packages/npm/*"
},
map: {
"angular-route": "github:angular/[email protected]",
"angular-translate": "github:angular-translate/[email protected]",
}...
編輯:當我試圖與NPM端點我在01
return new ErrorConstructor(message);
得到了錯誤http://errors.angularjs.org/1.5.8/$injector/unpr?p0=e
以下行安裝angular-translate
這我猜是有點進步,但仍然沒有明顯解決我的問題
編輯#2:我得到了角度路線,在@ar的幫助下工作通過使用npm端點,出於某種原因github端點不起作用,所以我使用了jspm install npm:angular-route
。進一步的調查需要,爲什麼GitHub的包沒有工作,故宮包做
編輯#3:我已經重寫了程序包配置,你可以在下面看到,儘管這並沒有幫助
"npm:[email protected]": {
"format": "global",
"dependencies": {
"angular": ">=1.2.26"
},
"shim": {
"angular-translate": {
"deps": "angular"
}
}
}
嘗試將您的導入更改爲:import * as'angular-route'中的AngularRoute – artem
您好,該語法只是從'angular-route'導入所有內容,這也給我一個空對象 –
該index.js有'module.exports ='ngRoute';'照原樣,它會導出一個字符串文字'ngRoute'。我不確定SystemJS能夠處理這個問題。以commonJS格式重新導出的正常方式是 'module.exports = require('./ angular-route');' – artem