angular - 离子角度 - 当我有多个嵌套路由时,路由无法正常工作
问题描述
我有两个页面,项目和用户。在项目页面内,我有子路线,添加/编辑/删除。在用户页面内,我有几个子路由,添加/删除。这使得路由结构如下所示。
应用程序路由.module.ts
{
path: "users",
loadChildren: "./users/users.module#UsersPageModule",
},
{
path: "items",
loadChildren: "./items/items.module#ItemsPageModule"
}
users.module.ts
{
path: "",
component: UsersPage,
children: [
{
path: "add",
component: EditUserComponent
},
{
path: "",
component: UserListComponent,
pathMatch: "full"
}
]
}
items.module.ts
{
path: "",
component: ItemsPage,
children: [
{
path: "additem",
component: ItemDetailsComponent
},
{
path: "",
component: ItemListComponent,
pathMatch: "full"
}
]
}
问题:加载应用程序后,如果我在同一页面内的路径之间切换一切正常,但一旦我访问另一个页面并再次返回上一页并尝试导航它就不起作用。
例如。首先我访问/items 然后/items/add 再次/items/。在这里一切正常。当我访问 /users 并再次返回 /items 时,问题就开始了。因此,此时项目页面加载良好,与 /items 相关联。但如果我尝试导航 /items/add. UI 上似乎没有发生任何事情。
我打开了路线跟踪,发现它显示Router Event: NavigationEnd
,任何线索为什么会发生这种情况?
这是 github 示例项目链接:https ://github.com/Dhananjay-JP/ionic-routing-issue.git 。
解决方案
你能告诉我们你是如何在你的 html 文件中编写导航链接的吗?
它可以是这样的。
<a [routerLink]="['users']">users</a>
<a [routerLink]="['items']">items</a>
推荐阅读
- sql-server - 如果表是堆,聚集索引是否会使插入速度变慢?
- angular - Jhipster nginx 'login/oauth2/code' 404 错误
- laravel - Laravel 角色和权限问题
- javascript - 使 array.filter 也过滤空值
- python - 为什么当我增加变量时这给了我 0,0
- python - 如何在同一列中连续减去前面的数据和后面的数据
- java - 从 MySQL (JDBC,JSP) 显示文本时如何设置 UTF-8 编码
- json - 正则表达式从键中删除空格而不是值
- python - 使用 Python 从 Github 获取不一致的结果
- c++ - 将多态基类的子类数组传递给构造函数的最简单语法