使用字符串变量导航到不同的命名插座
Navigate to different named outlet using a string variable
我有以下代码:
class Example {
.....
exampleNavigate(namedOutlet:string, data: any) {
const commands = [{
outlets: {
popup: [data.module, data.service, data.create]
}
}];
let queryParams = {}
queryParams['id'] = data.id;
this.router.navigate(commands, { queryParams } );
}
...
}
目前,我总是导航到 "popup" 出口。我可以导航到正在通过 exampleNavigate
函数传递的 namedOutlet
?
我发现我只需要将 popup: [data.module, data.service, data.create]
替换为这个 [outletName] : [data.module, data.service, data.create]
就可以了。
遵循完整的工作示例:
class Example {
.....
exampleNavigate(namedOutlet:string, data: any) {
const commands = [{
outlets: {
[outletName]: [data.module, data.service, data.create]
}
}];
let queryParams = {}
queryParams['id'] = data.id;
this.router.navigate(commands, { queryParams } );
}
...
}
我有以下代码:
class Example {
.....
exampleNavigate(namedOutlet:string, data: any) {
const commands = [{
outlets: {
popup: [data.module, data.service, data.create]
}
}];
let queryParams = {}
queryParams['id'] = data.id;
this.router.navigate(commands, { queryParams } );
}
...
}
目前,我总是导航到 "popup" 出口。我可以导航到正在通过 exampleNavigate
函数传递的 namedOutlet
?
我发现我只需要将 popup: [data.module, data.service, data.create]
替换为这个 [outletName] : [data.module, data.service, data.create]
就可以了。
遵循完整的工作示例:
class Example {
.....
exampleNavigate(namedOutlet:string, data: any) {
const commands = [{
outlets: {
[outletName]: [data.module, data.service, data.create]
}
}];
let queryParams = {}
queryParams['id'] = data.id;
this.router.navigate(commands, { queryParams } );
}
...
}