angular - 当 Angular 路由器防护 canActivate 在路由更改时返回 no 时,“无法读取未定义的属性 'nodeName'”
问题描述
在我使用具有主状态和子状态的路由器的 Angular 7 应用程序中,Guard 可以帮助我防止用户在表单填写过程中访问他们在给定时刻无法访问的状态。所以基本上我的 Guard 在让用户访问下一步之前检查所有以前的状态表单是否有效。当 Guard 的 canActivate 方法说没问题时,一切都很好,但是当它返回 false 时,我得到了这个我在控制台中无法理解的错误:
zone.js:199 Uncaught TypeError: Cannot read property 'nodeName' of undefined
at i.t._activate (bootstrap.min.js:6)
at i.t.show (bootstrap.min.js:6)
at HTMLAnchorElement.<anonymous> (bootstrap.min.js:6)
at Function.each (jquery.min.js:2)
at w.fn.init.each (jquery.min.js:2)
at w.fn.init.i._jQueryInterface [as tab] (bootstrap.min.js:6)
at HTMLAnchorElement.<anonymous> (bootstrap.min.js:6)
at HTMLDocument.dispatch (jquery.min.js:2)
at HTMLDocument.y.handle (jquery.min.js:2)
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:423)
t._activate @ bootstrap.min.js:6
t.show @ bootstrap.min.js:6
(anonymous) @ bootstrap.min.js:6
each @ jquery.min.js:2
each @ jquery.min.js:2
i._jQueryInterface @ bootstrap.min.js:6
(anonymous) @ bootstrap.min.js:6
dispatch @ jquery.min.js:2
y.handle @ jquery.min.js:2
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask @ zone.js:423
push../node_modules/zone.js/dist/zone.js.Zone.runTask @ zone.js:195
push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask @ zone.js:498
invokeTask @ zone.js:1744
globalZoneAwareCallback @ zone.js:1770
在这里,我遇到了这个错误并尝试逐步运行该应用程序。知道问题的根源或建议在哪里搜索吗?谢谢!
解决方案
推荐阅读
- java - 没有 IO 流就不存在 NIO 通道?
- java - Android Studio 4.1.1 资源链接失败
- laravel - 尝试获取非对象的属性“android_id”时出错
- python - ValueError:尝试使用不受支持的类型转换值(无)(
) 到张量 - typo3 - TYPO3 TCA 内联向导
- discord.py - Discord.py status 不显示会员在线状态,而是显示离线
- docker - 本地主机上带有 Docker 运行器的 GitLab:如何将主机暴露给容器?
- c# - 字符串格式化和条件运算符
- r - R循环用选定列的平均值替换多列中的NA
- python - 了解在 Jupyter 中创建和导入的新模块