2016-05-03 41 views
1

我使用角一段時間。 今天我更新到rc1,現在應用程序不再啓動了。 我跟着快速入門上angular.io ...使用rc0啓動應用程序

這是我的索引:

<!-- 1. Load libraries --> 
<script src="node_modules/es6-shim/es6-shim.min.js"></script> 
<script src="node_modules/zone.js/dist/zone.js"></script> 
<script src="node_modules/reflect-metadata/Reflect.js"></script> 
<script src="node_modules/systemjs/dist/system-polyfills.js"></script> 
<script src="node_modules/systemjs/dist/system.src.js"></script> 
<script src="node_modules/rxjs/bundles/Rx.js"></script> 

<script src="bower_components/jquery/dist/jquery.min.js"></script> 
<script src="bower_components/moment/min/moment.min.js"></script> 
<script src="bower_components/moment/locale/it.js"></script> 
<script src="bower_components/bootstrap/dist/js/bootstrap.js"></script> 
<script src="bower_components/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js"></script> 
<script src="bower_components/bootstrap-material-design/dist/js/material.js"></script> 
<script src="bower_components/toastr/toastr.min.js"></script> 
<script src="bower_components/spin.js/spin.min.js"></script> 
<script src="bower_components/inobounce/inobounce.min.js"></script> 
<script src="app/source/utils/extensions.js"></script> 

<!-- 2. Configure SystemJS --> 
<script src="systemjs.config.js"></script> 
<script> 
    $.material.init(); 
    System.import('app').catch(function(err){ console.error(err); }); 
</script> 

這是我system.config.js:

(function(global) { 

    // map tells the System loader where to look for things 
    var map = { 
    'app':      'app/source/', // 'dist', 
    'rxjs':      'node_modules/rxjs', 
    'angular2-in-memory-web-api': 'node_modules/angular2-in-memory-web-api', 
    '@angular':     'node_modules/@angular' 
    }; 

    // 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': { defaultExtension: 'js' }, 
    }; 

    var packageNames = [ 
    '@angular/common', 
    '@angular/compiler', 
    '@angular/core', 
    '@angular/http', 
    '@angular/platform-browser', 
    '@angular/platform-browser-dynamic', 
    '@angular/router-deprecated', 
    '@angular/testing', 
    '@angular/upgrade', 
    ]; 

    // add package entries for angular packages in the form '@angular/common': { main: 'index.js', defaultExtension: 'js' } 
    packageNames.forEach(function(pkgName) { 
    packages[pkgName] = { main: 'index.js', defaultExtension: 'js' }; 
    }); 

    var config = { 
    map: map, 
    packages: packages 
    } 

    // filterSystemConfig - index.html's chance to modify config before we register it. 
    if (global.filterSystemConfig) { global.filterSystemConfig(config); } 

    System.config(config); 

})(this); 

這是我DIST文件夾結構:

enter image description here

有了這個配置當我進入我的webapp我得到以下錯誤:

main:52 Error: SyntaxError: Unexpected token <(…) 

你能幫助我嗎? 非常感謝

編輯 這個問題似乎涉及到路由器

編輯 這是我的組件:

import {Component, OnInit, OnDestroy} from '@angular/core'; 
import {RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS} from '@angular/router-deprecated'; 
import {HTTP_PROVIDERS} from '@angular/http'; 
import {MainComponent} from './components/sections/main.component'; 
import {LoginComponent} from './components/sections/login.component'; 
import {NotFoundComponent} from './components/sections/not-found.component'; 
import {EventEmitterService} from './services/event-emitter.service'; 
import {IdentityService} from './services/identity.service'; 
import {NavigationService, Routes} from './services/navigation.service'; 
import {SettingsService} from './services/settings.service'; 
import {ToastsService} from './services/toasts.service'; 
import {BaseHttpService} from './services/base/base-http.service'; 
import {LoadingService} from './services/loading.service'; 
import 'rxjs/Rx'; 

@Component({ 
    selector: 'my-app', 
    template: '<router-outlet></router-outlet>', 
    directives: [ROUTER_DIRECTIVES], 
    providers: [ROUTER_PROVIDERS, EventEmitterService, NavigationService, SettingsService, ToastsService, HTTP_PROVIDERS, BaseHttpService, IdentityService, LoadingService] 
}) 
@RouteConfig([ 
    {path:Routes.Login.path , name: Routes.Login.state , component: LoginComponent , useAsDefault: true}, 
    {path:Routes.Main.path , name: Routes.Main.state , component: MainComponent}, 
    {path:Routes.NotFound.path , name: Routes.NotFound.state , component: NotFoundComponent}, 
    {path:'/**' , redirectTo: [Routes.NotFound.state]} 
]) 
export class AppComponent implements OnInit, OnDestroy 
{ 
    private unauthorizedSubscription:EventSubscription; 

    public constructor (private _identitySvc:IdentityService, private _eventEmitterSvc:EventEmitterService) { 
     debugger; 
    } 

    public ngOnInit() 
    { 
     this.unauthorizedSubscription = this._eventEmitterSvc.unauthorizedEvt.subscribe (() => this._identitySvc.logout()); 
    } 

    public ngOnDestroy() 
    { 
     this.unauthorizedSubscription.unsubscribe(); 
    } 
} 

如果我是這樣的編輯:

import {Component, OnInit, OnDestroy} from '@angular/core'; 


@Component({ 
    selector: 'my-app', 
    template: 'hello', 
}) 

export class AppComponent implements OnInit, OnDestroy 
{ 
    private unauthorizedSubscription:EventSubscription; 

    public constructor() { 
     debugger; 
    } 
} 

它的工作原理

+0

也許http://stackoverflow.com/questions/37000243/angular2-router-deprecated-dependencies-not-being-loaded/37000268#37000268? –

+0

我已經添加了'@ angular/router-deprecated',但不幸的是這並不能解決問題。 – user3471528

+0

刪除*進口「rxjs /接收」; *它的工作原理,但我得到的錯誤,如:* muObservable.finally是不是* ..我已經進口的可觀察到這樣的功能:*從進口{}可觀測「rxjs /可觀察」 * – user3471528

回答

0

我解決了使用這種進口的問題app.component.ts

import 'rxjs/add/operator/map'; 
import 'rxjs/add/operator/finally'; 
import 'rxjs/add/operator/switchMap'; 
import 'rxjs/add/operator/catch'; 
import 'rxjs/add/operator/do'; 
import 'rxjs/add/observable/range'; 
import 'rxjs/add/operator/delay'; 

我不知道爲什麼他們的要求(我真的不得不進口每一個方法?)。 如果有人發表解釋,我會將答案標記爲接受者。