angular2 error无法加载资源:服务器响应状态为404(未找到)

时间:2016-03-15 13:08:46

标签: angular

在Angular2中,我遇到了加载内部ts文件的问题。 在main.ts里面,我正在调用app.component。

错误是 无法加载资源:服务器响应状态为404(未找到)

错误:XHR错误(未找到404)加载http://localhost:12228/app/app.component(...)

http://localhost:12228/node_modules/angular2/platform/browser无法加载资源:服务器响应状态为500(内部服务器错误)



Main.ts

import {bootstrap} from '../node_modules/angular2/platform/browser';
import {AppComponent} from './app.component';

bootstrap(AppComponent);

app.component.ts

import {Component} from '../node_modules/angular2/core';

@Component({
    selector: 'hello-world',
    template: '<h1>Hello World From www.angulartypescript.com</h1><h2>Hallo</h2>'
})
export class AppComponent { }
&#13;
Index.html
<!DOCTYPE html>
<html>
<head>

    <title>Login</title>
 


    <!--<script src="https://code.angularjs.org/2.0.0-beta.9/angular2-polyfills.js"></script>-->

    <script src="https://code.angularjs.org/tools/system.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/2.0.0-beta.8/angular2.dev.js"></script>

    <script src="https://code.angularjs.org/tools/typescript.js"></script>
    <script src="https://code.angularjs.org/2.0.0-beta.9/Rx.js"></script>
    <script src="https://code.angularjs.org/2.0.0-beta.9/angular2.min.js"></script>
    <script src="https://code.angularjs.org/2.0.0-beta.9/http.min.js"></script>
    <script src="https://code.angularjs.org/2.0.0-beta.9/router.dev.js"></script>

    <script src="http://cdnjs.cloudflare.com/ajax/libs/json2/20110223/json2.js"></script>
    <script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
    <script src="http://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.3.1/underscore-min.js"></script>
    <script src="http://cdnjs.cloudflare.com/ajax/libs/backbone.js/0.9.2/backbone-min.js"></script>
    <script src="http://cdnjs.cloudflare.com/ajax/libs/backbone-localstorage.js/1.0/backbone.localStorage-min.js"></script>


    <script>
        System.config({
            map: {
                app: 'assets/js/app'
            },
            packages: {
                app: {
                    defaultExtension: 'js',
                    format: 'register'
                }
            }
        });
        System.import('app/main').then(null, console.error.bind(console));



    </script>


    <!--<script src="../node_modules/angular2/bundles/angular2-polyfills.js"></script>
    <script src="../node_modules/angular2/bundles/angular2-polyfills.min.js"></script>
    <script src="../node_modules/angular2/bundles/angular2.dev.js"></script>
    <script src="../node_modules/angular2/bundles/angular2.js"></script>
    <script src="../node_modules/angular2/bundles/angular2.min.js"></script>-->
    <!-- 2. Configure SystemJS -->
    
</head>
<!-- Run the application -->
<body>
    <h1>Angular 2 Form builder </h1>
    <hello-world>Loading Sample...</hello-world>

</body>
</html>
&#13;
&#13;
&#13;

请建议我如何解决这个问题。 感谢

3 个答案:

答案 0 :(得分:2)

您应该使用:

import {bootstrap} from 'angular2/platform/browser'; // <----
import {AppComponent} from './app.component';

bootstrap(AppComponent);

import {Component} from 'angular2/core'; // <----

@Component({
  selector: 'hello-world',
  template: '<h1>Hello World From www.angulartypescript.com</h1><h2>Hallo</h2>'
})
export class AppComponent { }

因为这些模块是由您导入的文件(https://code.angularjs.org/2.0.0-beta.9/angular2.min.js

明确注册的

答案 1 :(得分:0)

如果您在Visual Studio中运行应用程序,请更改

import {AppComponent }  from './app.component' 

import { AppComponent }  from './app.component.js' 

同时将文件扩展名更改为 .js 。并确保您的文件&#34; URL&#34;指着 文件。

答案 2 :(得分:0)

我遇到了类似的问题。花了大约3个小时后,我意识到我在错误的目录中运行ng serve命令。

在启动角度项目之前,只需检查当前的工作目录。