2016-09-21 108 views
4

我想在我的应用程序中使用一个名为ng2-material-select的新组件。 添加入systemjs.config.jsangular2找不到名字require

var map = { 
'Ng2Select': '/node_modules/ng2-material-select', 
"angular2-jwt": "/node_modules/angular2-jwt/angular2-jwt" 
}; 

var packages = { 
    'Ng2Select': { main: 'index.js', defaultExtension: 'js' }, 
}; 

但是当我启动应用程序,我面对以下错误:

Error loading http://192.168.0.46:3002/ng2-material-select as "ng2-material-select" from http://192.168.0.46:3002/app/module.js

也存在node_modules /以下错误NG2材料选/指数.TS,我认为它可能会导致问题加载:

cannot find name require :

const components = require('./ng2-select.bundle.js'); 

我更新昂ularjs和打字稿,但仍然没有解决问题。

请帮帮我。

+0

您是否在您的AppModule中添加了Ng2SelectModule,如下所示:''从'../ src/ng2-select.module'中导入{Ng2SelectModule};' – Sanket

+0

是的,在module.ts中我有'ng2-材料选'; –

回答

0

我相信你的systemjs.config.js映射是错误的。

这..

'Ng2Select': '/node_modules/ng2-material-select' 

指向TS文件,我相信你需要指向一个JS文件。我相信你想..

'Ng2Select': '/node_modules/ng2-material-select/dist/ng2-select.bundle.js' 

闲逛在/ node_modules/NG2材料,选择文件夹,并确保您都指向正确的文件。

(我相信JS文件是TS文件试图要求的文件)。