angular - 单击按钮更改路由 url
问题描述
我正在尝试通过单击跨度来导航页面,到目前为止它对我来说这个代码工作正常。但只是想知道这是实现这一目标的唯一方法,还是有可能在一个函数内处理而不是有两个函数和两个使用输出事件发射器?请建议。
父组件:
public navigateAbout() {
this.router.navigateUrl('/about');
}
public navigateContact() {
this.router.navigateUrl('/contact');
}
子组件:
@Output() public navigateAbout = new EventEmitter<void>();
@Output() public navigateContact = new EventEmitter<void>();
public navigateAboutPage():void {
this.navigateAbout.emit();
}
public navigateContactPage():void {
this.navigateContact.emit();
}
子模板:
<ol>
<li>...... <span (click)="navigateAboutPage()">about</span>......</li>
<li>...... <span (click)="navigateContactPage()">contact</span>......</li>
</ol>
解决方案
让我知道这是否有帮助。
<ol>
<li>...... <span (click)="navigate('about')">about</span>......</li>
<li>...... <span (click)="navigate('contact')">contact</span>......</li>
</ol>
模板
navigate(path){
this.router.navigate([path])
}
推荐阅读
- python - Python OpenCV顺时针排序轮廓
- python-3.x - UnboundLocalError:分配前引用的局部变量“命令”
- sql-server - SQL Server:如果两列都不为空,则用分隔符连接两列,否则返回第三列
- java - Selenium 重复特定的测试步骤
- javascript - 检查数组是否为空,如果为真则阻止弹出
- javascript - React Native:无效的钩子调用
- html - 如何仅选择外部元素(表格/列表)
- java - 哪种数据结构最适合无法将 Item 等规则运送到 ZipCode
- python - Python程序中的AttributeError
- mailkit - MimeKit .Net Core:目标进程在评估函数“MimeKit.MimeMessage.ToString”时以代码-1073741819退出