2017-01-05 1 views
2

2番のrouterLinkで問題が発生しました。 私はVisual Studio 2015でルーティングコンセプトのSPAを作成しようとしています。 [routerLink]でアンカータグをクリックすると、特定のページにリダイレクトされますが、アンカータグはクリックできません。プレーンテキストとして表示されます。2番のrouterLinkがプレーンテキストで表示

MasterPage.html-

Left menu headers footers 
<a [routerLink]="['Supplier']">Supplier</a> 
<a [routerLink]="['Customer']">Customer</a><br /> 
<div> 
    <router-outlet></router-outlet> 
</div> 

Routing.ts -

import {Component} from '@angular/core'; 
import {CustomerComponent} from '../Binder/CustomerComponent'; 
import {SupplierComponent} from "../Binder/SupplierComponent"; 

export const ApplicationRoutes = [ 
{ path: 'Customer', component: CustomerComponent }, 
{ path: 'Supplier', component: SupplierComponent } 
]; 

app.module-

import { NgModule }  from '@angular/core'; 
import { BrowserModule } from '@angular/platform-browser'; 
import { CustomerComponent } from './CustomerComponent'; 
import {FormsModule} from "@angular/forms" 
import {GridComponent} from "./GridComponent" 
import { MasterPageComponent } from './MasterPageComponent'; 
import { SupplierComponent } from './SupplierComponent'; 
import { RouterModule } from '@angular/router'; 
import { ApplicationRoutes } from './Routing'; 

@NgModule({ 
imports: [ 
RouterModule.forRoot(ApplicationRoutes), 
BrowserModule, 
FormsModule], 
declarations: [ 
CustomerComponent, 
SupplierComponent,     
MasterPageComponent], 
bootstrap: [MasterPageComponent] 
}) 
export class MainModuleLibrary { } 

してくださいあなたが私からの詳細を必要としているかどうか、私に知らせてください。前もって感謝します。

<a routerLink="/Supplier" routerLinkActive="active">Supplier</a> 
    <a routerLink="/Customer" routerLinkActive="active">Customer</a> 

<router-outlet></router-outlet> 

EDIT:

+1

試みは: 'Supplier'おそらく同様Supplier' 'の前に=> '「/サプライヤー」'のは、直接このリンクを行い – Alex

+1

をslahsを追加しますto - '' ../Binder/CustomerComponent''?それはフォルダーか 'Binder'は2つのコンポーネントを持つフォルダーですか? 'CustomerComponent'と' SupplierComponent'? –

+0

@LavanyaM、あなたのコードに存在するものがすべてあることを確認するために、私の答えを更新しました。 – Alex

答えて

0

はこれを試してみてくださいあなたのrouting.tsファイルでも、実際にこのような行がありますか?

export const routing: ModuleWithProviders = RouterModule.forRoot(ApplicatonRoutes); 

これを@ngModuleにインポートしましたか?プロジェクトを知りませんが、実際にコンテンツを作成していない場合、ページにリンクが表示され、クリックできなくなり、エラーは発生しません。

+0

質問にapp.moduleを追加しました。ここには上記の行が含まれています。 –

+0

うーん、奇妙な。私はこの時点であなたができることは、プランカを試して再現することだけだと思っています... – Alex

0

MasterPage.html

<a [routerLink]="['./Supplier']">Supplier</a> 
<a [routerLink]="['./Customer']">Customer</a><br /> 
<div> 
    <router-outlet></router-outlet> 
</div> 

Routing.ts

import { Routes, RouterModule } from '@angular/router'; 
import { CustomerComponent } from '../Binder/CustomerComponent'; 
import { SupplierComponent } from '../Binder/SupplierComponent'; 

const appRoutes: Routes = [ 
    { path: 'Customer', component: CustomerComponent }, 
    { path: 'Supplier', component: SupplierComponent } 
]; 

export const routing = RouterModule.forRoot(appRoutes); 

app.module

import { NgModule }  from '@angular/core'; 
import { BrowserModule } from '@angular/platform-browser'; 
import { CustomerComponent } from './CustomerComponent'; 
import { FormsModule } from "@angular/forms" 
import { GridComponent } from "./GridComponent" 
import { MasterPageComponent } from './MasterPageComponent'; 
import { SupplierComponent } from './SupplierComponent'; 
import { RouterModule } from '@angular/router'; 
import { routing } from './Routing'; 

@NgModule({ 
    imports: [ 
    routing, 
    BrowserModule, 
    FormsModule], 
    declarations: [ 
    CustomerComponent, 
    SupplierComponent,     
    MasterPageComponent], 
    bootstrap: [MasterPageComponent] 
}) 
export class MainModuleLibrary { } 

そして、あなたのファイルを大文字にしないでください。

+0

Not working :(バインダーは2つのコンポーネントを持つフォルダです –

+0

'app.module'ファイルを表示します –

+0

私は編集しました質問にapp.moduleを追加しました –

0

プレフィックススラッシュとあなたのリンク:括弧なし

<a [routerLink]="['/Supplier']">Supplier</a> 
<a [routerLink]="['/Customer']">Customer</a><br /> 
<div> 
    <router-outlet></router-outlet> 
</div> 
関連する問題