angular同一页面跳转重新执行方法
问题
当收到导航到当前URL的请求,Angular路由器会忽略,重复点击同一链接页面不会刷新,也不会重新执行ngOnInit函数
解决
1、跳转时给Router中增加参数
this.router.navigate([path],{queryParams:{lang:'zh-cn'}})
2、在组件中订阅queryParamMap,判断有lang字段就重新执行init方法
constructor( private sanitizer: DomSanitizer, private routerInfo: ActivatedRoute,) { this.routerInfo.queryParamMap.subscribe(params => { if (params.get('lang')) { this.init(); } }); } init(): void{ console.log('重新执行了') }
angularjs中界面跳转或返回,界面刷新问题cache:false
问题描述
第一次进界面,按钮可以点击,第二次进去按钮不能点击了,按钮事件是在controller里写的。
解决方法
加上cache:false,即可。表示页面重新刷新加载。
.state('tab.shouye', { cache:false, url: '/shouye', views: { 'tab-shouye': { templateUrl: 'App/Views/tab-shouye.html', controller: 'shouyeCtrl' } } })
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
来源链接:https://www.jb51.net/javascript/305175fo7.htm
© 版权声明
本站所有资源来自于网络,仅供学习与参考,请勿用于商业用途,否则产生的一切后果将由您(转载者)自己承担!
如有侵犯您的版权,请及时联系3500663466#qq.com(#换@),我们将第一时间删除本站数据。
如有侵犯您的版权,请及时联系3500663466#qq.com(#换@),我们将第一时间删除本站数据。
THE END
暂无评论内容