我通过路由传递信息,我想知道是否可以传递一个简单的变量? 传递这个变量'testText'
因为当我尝试时它不起作用。
main.html
<app-table>
[tableCols]="tableCols"
(click)="passData(lstId, toto)"
[tableRows]="rows | async"
</app-table>
main.ts
list:string;
testText: string = 'test text'; // pass this data to another component using router
makeRowObservable(): Obervable<any[]> {
return this.service
.get()
.pipe(
map((data: Istud) => {
data.stud.map((item:any[]) => this.transormListToMap(item)
}
}
transormListToMap() {
let result = {};
for (let i = 0; i < this.tableCols.length; i++) {
let col = this.tableCols[i];
let value = item[i];
let colId = col.key;
result[colId] = value;
}
this.listId = result;
return result;
}
passData(id:string, toto:string) {
this.listId = id;
this.testText = toto:
this.router.navigate([/route, (id), (toto)]);
}
main.routing
const appRoutes: Routes = [
{
path: 'stud/:id/:toto',
component: studComponent;
}
]
another.component.ts
mainId:string;
mainToto:string;
getData() {
this.route.paramMap.subscribe((params: Params) => {
this.mainId = params.get('id);
this.mainToto= params.get('toto);
}
}