हाल ही में, मैंने कोणीय 2 के साथ खेलना शुरू किया है। यह अब तक का कमाल है। इसलिए, मैंने सीखने का उपयोग करने के लिए एक डेमो व्यक्तिगत परियोजना शुरू की है angular-cli
।
मूल रूटिंग सेटअप के साथ, मैं अब हेडर से कुछ मार्गों पर नेविगेट करना चाहता हूं, लेकिन चूंकि मेरा हेडर माता-पिता का है router-outlet
, इसलिए मुझे यह त्रुटि मिलती है।
app.component.html
<app-header></app-header> // Trying to navigate from this component
<router-outlet></router-outlet>
<app-footer></app-footer>
header.component.html
<a [routerLink]="['/signin']">Sign in</a>
अब मैं आंशिक रूप से समझता हूं कि मुझे लगता है कि चूंकि यह घटक एक आवरण है, router-outlet
इसलिए इसके आसपास पहुंच संभव नहीं है router
। तो, क्या इस तरह के परिदृश्य के लिए बाहर से नेविगेशन एक्सेस करने की संभावना है?
अगर जरूरत पड़ी तो मुझे और भी जानकारी जोड़कर खुशी होगी। पहले ही, आपका बहुत धन्यवाद।
अपडेट करें
1- मेरे पास package.json
पहले से ही स्थिर @angular/router 3.3.1
संस्करण है। 2- मेरे मुख्य app
मॉड्यूल में, मैंने आयात किया है routing-module
। कृपया नीचे देखे।
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 { }
एप्लिकेशन-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 {}
जिस मार्ग पर मैं पहुँचने का प्रयास कर रहा हूँ, module
वह दूसरे से मिला हैUsersModule
उपयोगकर्ता के routing.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 { }
जब मैं एक ऐसे घटक से नेविगेट करने की कोशिश कर रहा हूं जो Layout
मॉड्यूल का हिस्सा है , लेकिन राउटर मॉड्यूल की कोई धारणा नहीं है। क्या वह त्रुटि पैदा कर रहा है।
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{}
मैं से नेविगेट करने की कोशिश कर रहा हूँ HeaderComponent
। जरूरत पड़ने पर और जानकारी देने में मुझे खुशी होगी।
RouterModule
को भी जोड़ा है imports: []
जहाँ आप उपयोग करते हैं routerLink
या<router-outlet>
AppRoutingModule
इससे पहले आगे बढ़ेंLayoutModule