【发布时间】:2016-10-10 19:37:40
【问题描述】:
我已按照 angular material2 Getting Started 中的说明安装 @angular/material。通过 Atom,我更新了 package.json、app.module,除了入门说明之外,我还更新了 systemjs.config,如下:'@angular/material':'node_modules/@angular/material',
我收到以下错误:zone.js:1274 GET http://localhost:3000/node_modules/@angular/material/ 404(未找到)
(SystemJS) XHR 错误 (404 Not Found) loading http://localhost:3000/node_modules/@angular/material(...)
我相信我已经跟踪到许多@angular 文件夹都有一个包含 umd 文件的 bundle 子文件夹的问题,但 @angular/material 文件夹没有 bundle 子文件夹。因此,“解包”功能找不到@angular/material/material.umd.js
systemjs 超出了我的舒适区,所以我不确定上述内容,但是我无法使用 alpha.9-3 的新文件结构解决 404 问题这是相关代码(其他组件未显示)。
package.json
"@angular/material": "2.0.0-alpha.9-3",
app.module
import { MaterialModule } from '@angular/material';
@NgModule({
imports: MaterialModule.forRoot(),
systemjs.config
(function(global) {
var map = {
'app': 'app',
// angular bundles
'@angular': 'node_modules/@angular',
// other libraries
'angular2-in-memory-web-api': 'node_modules/angular2-in-memory-web-api',
'rxjs': 'node_modules/rxjs',
'@angular/material': 'node_modules/@angular/material',
};
var packages = {
'app': { main: 'main.js', defaultExtension: 'js' },
'rxjs':{ defaultExtension: 'js' },
'angular2-in-memory-web-api': { main: 'index.js', defaultExtension: 'js' },
};
var ngPackageNames = [
'common',
'compiler',
'core',
'forms',
'http',
'platform-browser',
'platform-browser-dynamic',
'platform-server',
'router',
'upgrade',
]; //adding 'material' to the array causes a different 404 error
function packIndex(pkgName) {
packages['@angular/'+pkgName] = { main: 'index.js', defaultExtension: 'js' };
}
function packUmd(pkgName) {
packages['@angular/'+pkgName] = { main: 'bundles/' + pkgName + '.umd.js', defaultExtension: 'js' };
}
var setPackageConfig = System.packageWithIndex ? packIndex : packUmd;
ngPackageNames.forEach(setPackageConfig);
var config = {
map: map,
packages: packages
};
System.config(config);
})(this); //end of function(global)
我检查了我的文件夹/文件结构,@angular/material/material.umd.js 肯定存在。如何摆脱 404 not found?
【问题讨论】:
-
应该删除 angular-material 标签,因为这与 Angular 1.x 的库无关。
标签: javascript angular systemjs angular-material2