リストビューでルートパラメータを設定できません。リンクをクリックすると、ContentViewerコンポーネントが開きません。デバッグはエラーを書き込みます:角度2.ルーティングの問題
1.約束しています:エラー:いずれのルートにも一致できません。
2.未承認プロミス拒否:いずれのルートにも一致しません。 URLセグメント: 'components/input';ゾーン:角度;タスク:Promise.then;値:
これは私の主なサービスです。
const LSNS = [
{ name: 'Helpers' ,
items: [
{ id : "autocomplete" , name : "Autocomplete" },
{ id : "checkbox" , name : "Checkbox" },
{ id : "input" , name : "Input" },
]
},
{ name: 'front-back-end',
items: [
{ id : "video_chat", name : "Video chat" },
{ id : "audio_chat", name : "Audio chat" },
{ id : "simple_chat", name : "Simple chat"},
{ id : "another", name : "Another"}
]
}
]
const BMJ = LSNS.reduce((function(a,b){
return a.concat(b.items);
}), []);
@Injectable()
export class LSNDiscriptionService {
getItemLSNS(): Hlsns[] {
return LSNS;
};
getBMJ(id:string) {
return BMJ.find(bm => bm.id === id);
};
};
ルーティング。あなたの現在の実装では、あなたが子供のルートにナビゲートしたい絶対ルートを示し
import { Component, OnInit } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { LSNDiscriptionService, LSNSItem } from '../common-
service/common.service';
export class ContentViewer implements OnInit {
bm:LSNSItem;
constructor(public lds:LSNDiscriptionService,
private _route:ActivatedRoute){}
ngOnInit():void {
this._route.params.subscribe(params => this.bm =
this.lds.getBMJ(params['id']));
};
}
「let bm of lsn.items」どこにlsnの宣言がありますか? – Zze