2016-03-23 35 views
2

Yönlendirmeyi gösterme noktasını göstermek için Angular2 içinde Benim Yönlendirme çalışmıyor, sitenin hem kökeni hem de /login için hedefle aynı bileşeni ekledim. Bileşen http://localhost:3000, ancak http://localhost:3000/login adresinde çalışıyor, sadece "GET/giriş yapamıyorum" bir uyarı olsun.Yönlendirme çalışmıyor Angular2

app.component.ts:

import { Component } from 'angular2/core'; 
import { RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS } from 'angular2/router'; 

import {TodoService} from './todo/services/todo.service'; 
import { TodoCmp } from './todo/components/todo.component'; 
import { LoginComponent } from './user/components/login.component'; 
import { UserService } from './user/services/user.service'; 


@Component({ 
    selector: 'my-app', 
    template: ` 
    <h1>{{title}}</h1> 
    <router-outlet></router-outlet> 
    `, 
    styleUrls: ['client/dev/todo/styles/todo.css'], 
    directives: [ROUTER_DIRECTIVES], 
    providers: [ 
    ROUTER_PROVIDERS, 
    TodoService 
    ] 
}) 
@RouteConfig([ 
    { 
    path: '/', 
    name: 'TodoCmp', 
    component: TodoCmp, 
    useAsDefault: true 
    }, 
    { 
    path: '/login', 
    name: 'TodoCmp', 
    component: TodoCmp 
    } 
]) 

export class AppComponent { 
    title = 'ng2do'; 
} 

İşte benim index dosyaya bir bağlantıdır. Neyi yanlış yaptım?

+0

gerekli tüm kütüphane dosyaları dahil ettik için ROUTER_PROVIDERS hareket etmelidir

@RouteConfig([ { path: '/', name: 'TodoCmp', component: TodoCmp, useAsDefault: true }, { path: '/login', name: 'TodoCmp', <!-- <<<== should be 'Login' instead of 'TodoCmp' component: TodoCmp } ]) 

? – sdfacre

+0

@sdfacre Evet, system.config ile bağımlılıklara dosya uzantıları eklememeyle ilgili bir sorunla karşı karşıya kalıyordum. Bu şimdi çözüldü, lütfen güncellenmiş soruma bakın. –

+0

Eğer her şey doğru şekilde yüklendiyse, neden hala 'talep edilmediğinden' şikayet etmiyor '... Üzgünüm, bir plunker sağlayamadığınız sürece hiçbir fikrim yok. Herhangi bir örneği takip ettiniz mi? http://www.waynehong.com/javascript/angular-2-routing-example-typescript/ – sdfacre

cevap

0

bir @RouteConfig(...) aynı ada sahip olamaz İki yolları: Sen bootstrap() (gibi HTTP_PROVIDERS)

+0

sorusuna ekleyeceğim. 'angular2/yönlendirici'den' import {ROUTER_PROVIDERS} öğesini ekledim; sonra satırımı "bootstrap" olarak değiştirdim (AppComponent, [HTTP_PROVIDERS, ROUTER_PROVIDERS]); 'main.ts içinde, ama yine de aynı davranışı alıyorum, yapmak istediğin şey bu mu? –

+0

Ayrıca onu @Component() 'dan kaldırdınız mı? –

+0

Evet, onu 'app.component' –

İlgili konular