我正试图通过角度2快速入门,我遇到了这个错误信息。
Starting up http-server, serving ./
Available on:
http://127.0.0.1:8080
http://172.17.12.201:8080
Hit CTRL-C to stop the server
[Thu Aug 11 2016 16:27:57 GMT+0000 (UTC)] "GET /app/app.main.js" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36"
[Thu Aug 11 2016 16:27:57 GMT+0000 (UTC)] "GET /app/app.main.js" Error (404): "Not found"
systemjs.config.js的设置与它们完全相同:
/**
* System configuration for Angular 2 samples
* Adjust as necessary for your application needs.
*/
(function(global) {
// map tells the System loader where to look for things
var map = {
'app': 'app', // 'dist',
'@angular': 'node_modules/@angular',
'angular2-in-memory-web-api': 'node_modules/angular2-in-memory-web-api',
'rxjs': 'node_modules/rxjs'
};
// packages tells the System loader how to load when no filename and/or no extension
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',
'router',
'router-deprecated',
'upgrade',
];
// Individual files (~300 requests):
function packIndex(pkgName) {
packages['@angular/'+pkgName] = { main: 'index.js', defaultExtension: 'js' };
}
// Bundled (~40 requests):
function packUmd(pkgName) {
packages['@angular/'+pkgName] = { main: '/bundles/' + pkgName + '.umd.js', defaultExtension: 'js' };
}
// Most environments should use UMD; some (Karma) need the individual index files
var setPackageConfig = System.packageWithIndex ? packIndex : packUmd;
// Add package entries for angular packages
ngPackageNames.forEach(setPackageConfig);
var config = {
map: map,
packages: packages
};
System.config(config);
})(this);
main.js被转换为app / main.js。那么是什么导致服务器尝试路由到app / app / main.js?我进行了搜索和搜索,似乎没有什么东西可以脱节,似乎没有其他人有这个问题。是否有其他地方的路线布局?
更新:根据@Jayesh的请求,我正在添加文件结构的图片。一切都应该是。 :)
答案 0 :(得分:3)
我遵循了最新的教程,它完美无缺。我认为你的文件名错了。而不是在app文件夹中创建文件main.ts,即:app / main.ts,你可能创建了一个名为app / app.main.ts的文件,这可能导致你所面临的错误。
如果没有,那么一小段文件夹结构可能有助于确定根本原因。
答案 1 :(得分:0)
好的,问题是教程指定了main.ts,它转换为main.js.服务器正在寻找app.main.js.所以,一旦我将文件更改为app.main.ts,它就可以了。在我阅读@Jayesh的评论之前,我没有看到错误消息,因为它是蓝色的红色,看起来像app / app / main.js。所以,谢谢你把它检查出来。 :)