Gần đây, tôi đã bắt đầu chơi với góc cạnh 2. Thật tuyệt vời cho đến nay. Vì vậy, tôi đã bắt đầu một dự án cá nhân demo vì lợi ích của việc học bằng cách sử dụng angular-cli
.Không thể liên kết với 'routerLink' vì nó không phải là tài sản đã biết
Với thiết lập định tuyến cơ bản, bây giờ tôi muốn điều hướng đến một số tuyến từ tiêu đề, nhưng vì tiêu đề của tôi là phụ huynh ở số router-outlet
, tôi nhận được lỗi này.
app.component.html
<app-header></app-header> // Trying to navigate from this component
<router-outlet></router-outlet>
<app-footer></app-footer>
header.component.html
Bây giờ tôi hiểu một phần tôi đoán rằng kể từ khi thành phần đó là một wrapper quanh router-outlet
nó sẽ không có thể theo cách này để truy cập router
. Vì vậy, có khả năng truy cập điều hướng từ bên ngoài cho một kịch bản như thế này?
Tôi rất sẵn lòng thêm bất kỳ thông tin nào nếu cần. Cảm ơn bạn trước.
Cập nhật
1- My package.json
đã có phiên bản ổn định @angular/router 3.3.1
. 2- Trong mô-đun app
chính của tôi, tôi đã nhập routing-module
. Vui lòng xem bên dưới.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { AlertModule } from 'ng2-bootstrap';
import { LayoutModule } from './layout/layout.module';
import { UsersModule } from './users/users.module';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { PageNotFoundComponent } from './shared/components/not-found.component';
@NgModule({
declarations: [
AppComponent,
PageNotFoundComponent
],
imports: [
BrowserModule,
FormsModule,
HttpModule,
AlertModule.forRoot(),
LayoutModule,
UsersModule,
AppRoutingModule --> This is the routing module.
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
app-routing.module.ts
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { SigninComponent } from './users/signin/signin.component';
import { PageNotFoundComponent } from './shared/components/not-found.component';
const routes: Routes = [
{ path: '**', component: PageNotFoundComponent }
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule {}
Tuyến Tôi cố gắng để truy cập được phân cấp từ một module
đó là UsersModule
người dùng-rou ting.module.ts
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { SigninComponent } from './signin/signin.component';
const usersRoutes: Routes = [
{ path: 'signin', component: SigninComponent }
];
@NgModule({
imports: [
RouterModule.forChild(usersRoutes)
],
exports: [
RouterModule
]
})
export class UsersRoutingModule { }
Trong khi tôi đang cố gắng để di chuyển từ một thành phần là một phần của các mô-đun Layout
, nhưng không có khái niệm về các mô-đun bộ định tuyến. Đó có phải là điều gây ra lỗi không.
Layout.module.ts
import { NgModule } from '@angular/core';
import { HeaderComponent } from './header/header.component';
import { FooterComponent } from './footer/footer.component';
@NgModule({
declarations: [HeaderComponent, FooterComponent],
exports: [HeaderComponent, FooterComponent]
})
export class LayoutModule{}
tôi đang cố gắng để di chuyển từ HeaderComponent
. Tôi rất sẵn lòng cung cấp thêm thông tin nếu cần.
Nhập tuyến RouteModule tại gốc ứng dụng của bạn và cập nhật gói npm phiên bản ổn định mới nhất – harshes53
Vâng Tôi có phiên bản ổn định mới nhất. – Umair
Bạn cũng đã thêm 'RouterModule' vào' import: [] 'của tất cả các mô-đun nơi bạn sử dụng' routerLink' hoặc '' –