[英]Routing not working in Angular2
My Routing isn't working in Angular2, to demonstrate the point, I have put the same component as the destination for both the root of my site and /login
. 我的路由在Angular2中不起作用,为了说明这一点,我将相同的组件与目标的根放在了网站的根目录和
/login
。 The component works at http://localhost:3000
, but at http://localhost:3000/login
, I just get a notice "Cannot GET /login". 该组件在
http://localhost:3000
,但是在http://localhost:3000/login
,我仅收到一条通知“ Cannot GET / login”。
app.component.ts: 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';
}
Here is a link to my index file. 这是指向我的索引文件的链接。 What have I done wrong?
我做错了什么?
Two routes in one @RouteConfig(...)
can't have the same name: 一个
@RouteConfig(...)
两个路由不能具有相同的名称:
@RouteConfig([
{
path: '/',
name: 'TodoCmp',
component: TodoCmp,
useAsDefault: true
},
{
path: '/login',
name: 'TodoCmp', <!-- <<<== should be 'Login' instead of 'TodoCmp'
component: TodoCmp
}
])
You should move ROUTER_PROVIDERS
to bootstrap()
(like HTTP_PROVIDERS
) 您应该将
ROUTER_PROVIDERS
移至bootstrap()
(如HTTP_PROVIDERS
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.