Riv*_*diz 4 typescript angular2-routing angular
我正在尝试在学习Angular 2的同时设置一条简单的路线,每当我点击一个链接时,浏览器就会被路由到新的路线,但浏览器会重新请求所有资源(不像单页应用程序那样).
我的索引文件,
<!--... . . various scripts and styles . . . . . --->
<script src="node_modules/angular2/bundles/angular2.dev.js"></script>
<script src="node_modules/angular2/bundles/router.dev.js"></script>
<script src="node_modules/angular2/bundles/http.dev.js"></script>
<script>
System.config({
packages: {
app: {
format: 'register',
defaultExtension: 'js'
}
}
});
System.import('app/main')
.then(null, console.error.bind(console));
</script>
</head>
<body>
<app></app>
</body>
Run Code Online (Sandbox Code Playgroud)
应用来源,
main.ts
import {bootstrap} from 'angular2/platform/browser';
import {RoutingApp} from './routing/routing.app'
import {ROUTER_PROVIDERS} from 'angular2/router'
bootstrap(RoutingApp, [ROUTER_PROVIDERS]);
Run Code Online (Sandbox Code Playgroud)
RoutingApp
import {Component} from "angular2/core"
import {RouteComponent} from './route.component'
import { RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS } from 'angular2/router';
@Component({
selector : 'app',
template : `
go to this <a href="/link">link</a>
<br />
<router-outlet></router-outlet>
`,
directives: [ROUTER_DIRECTIVES],
providers: [ROUTER_PROVIDERS]
})
@RouteConfig([
{path: '/link', name: 'Link', component: RouteComponent}
])
export class RoutingApp{
}
Run Code Online (Sandbox Code Playgroud)
和RouteComponent
import {Component} from 'angular2/core'
@Component({
template: `
hello from RouteComponent
`
})
export class RouteComponent{}
Run Code Online (Sandbox Code Playgroud)
我做错了什么?Angular版本是2.0.0-beta.7.
谢谢您的任何见解.
您应该使用该routerLink指令导航到路由:
<a [routerLink]="['Link']">link</a>
Run Code Online (Sandbox Code Playgroud)
由于您已在组件ROUTER_DIRECTIVES的directives属性中指定,因此该指令可直接使用
| 归档时间: |
|
| 查看次数: |
1610 次 |
| 最近记录: |