angular - Angular:如何始终重新加载 URL 但忽略片段?(使用 RunGuardsAndResolvers ?)
问题描述
我“总是”想重新加载我的解析器,并且只在设置片段时忽略重新加载(例如:URL/xxx?yyy#FRAGMENTHERE)
我错过了什么还是在 Angular 中不可能?
这是我尝试过的:
在 app-routing-module.ts
...
onSameUrlNavigation: 'reload',
...
在 XXX-routing-module.ts
测试1:
...
runGuardsAndResolvers: 'always' as RunGuardsAndResolvers,
...
这个不起作用,因为当片段更改时,解析器被调用
测试 2,3,4:
runGuardsAndResolvers: 'pathParamsOrQueryParamsChange' as RunGuardsAndResolvers,
runGuardsAndResolvers: 'paramsOrQueryParamsChange' as RunGuardsAndResolvers,
runGuardsAndResolvers: 'paramsChange' as RunGuardsAndResolvers,
那些不起作用,因为如果我试图在同一个 URL 上重新加载它不会调用解析器
PS:导航看起来像这样
this.router.navigate([], {
queryParamsHandling: 'merge',
queryParams: {
ProgramState: ProgramState.Reading,
Session: 0,
}
});
解决方案
推荐阅读
- c# - 为什么 cURL 有效,但我的 HttpWebRequest 无效?
- java - 如何让 Eclipse 在源代码文件夹以外的不同文件夹中创建 .classpath、.settings 文件?
- python - TensorFlow 和 Keras 入门:过去 (TF1) 现在 (TF2)
- c++ - 如何在使用 ItemType 的模板类时将新节点插入二叉树 C++。(我是 C++ 新手)
- vue.js - 如何在 Vue main.js 中导入 jspdf-autotable?
- python - 如何在元组上完成 fit_transform,或者能够通过将元组更改为...来完成数据上的 fit_transform?
- ios - 使用 UICollectionView 创建类似卡片布局的火种
- java - 我正在尝试在 java 中实现凯撒密码,但没有任何想法,因为我必须需要一个 char[] 键作为参数而不是 int 移位
- amazon-web-services - 主动存储和 S3
- c++ - 如何查看有关 async_accept 失败的原始 tcp 数据?