Tôi vừa mới bắt đầu sử dụng thư viện định tuyến mới (@ angle / router v3.0.0-alpha.7) nhưng làm theo các tài liệu chính thức dẫn đến lỗi bên dưới:
browser_adapter.ts:74: EXCEPTION: Error: Uncaught (in promise): Error: Cannot find primary outlet to load 'HomePage'
Câu hỏi đặt ra là - làm cách nào để loại bỏ lỗi và làm cho bộ định tuyến hoạt động như mong đợi? Tôi đã bỏ lỡ một thiết lập?
(Lỗi tương tự xuất hiện khi sử dụng phiên bản alpha.6.)
app.component.ts
import { Component } from '@angular/core';
import { ROUTER_DIRECTIVES } from '@angular/router';
@Component({
selector: 'app',
template: `
<p>Angular 2 is running...</p>
<!-- Routed views go here -->
<router-outlet></router-outlet>
`,
providers: [ROUTER_DIRECTIVES]
})
export class AppComponent {
}
app.routes.ts
import { provideRouter, RouterConfig } from '@angular/router';
import { HomePage } from './pages/home/home';
export const routes: RouterConfig = [
{ path: '', component: HomePage }
];
export const APP_ROUTER_PROVIDERS = [
provideRouter(routes)
];
home.ts
import { Component } from '@angular/core';
@Component({
template: '<h1>Home Page</h1>'
})
export class HomePage {
}
main.ts
/* Avoid: 'error TS2304: Cannot find name <type>' during compilation */
///<reference path="../../typings/index.d.ts" />
import { bootstrap } from "@angular/platform-browser-dynamic";
import { APP_ROUTER_PROVIDERS } from './app.routes';
import { AppComponent } from "./app.component";
bootstrap(AppComponent, [
APP_ROUTER_PROVIDERS,
]).catch(err => console.error(err));
'<router-outlet></router-outlet>'
Điều này có thể do lỗi đánh máy quá trong'<router-outlet></router-outlet>'