javascript - 如何在 vuejs 中显示没有路由器视图父视图的子视图?
问题描述
我试图在另一个视图中而不是在父路由视图中显示子路由视图,我在 vue-router 的模块中有下一条路由:
const users = {
path: '/users',
name: 'users',
component: Users,
children: [
{ path: ':user',
name: 'user',
component: User,
children: [
{ path: 'profile', name: 'profile', component: Profile },
{ path: 'events', name: 'events', component: Events }
]
}
]
}
export default home
当输入路径 /users/:user 通过路由器视图向我显示父视图内的子视图
<!-- users.vue -->
<!-- path: /users -->
<template>
<div v-if="(user, index) in users" :key="index">
<router-link :to="`/users/${user.name}`">{{ user.name }}</router-link>
</div>
<!-- Here shows the children view -->
<!-- path: /users/:user/ -->
<router-view/>
</template>
我需要将它直接显示在另一个独立视图中,而不是在父视图中,它会是这样的:
<!-- users.vue -->
<!-- path: /users -->
<template>
<div v-if="(user, index) in users" :key="index">
<router-link :to="`/users/${user.name}`">{{ user.name }}</router-link>
</div>
</template>
<!-- user.vue -->
<!-- path: /users/:user -->
<template>
<h1>{{ this.$route.params.name }}</h1>
</template>
如果你能帮助我,谢谢你的问候
解决方案
为用户路由创建单独的路由,而不是用户的孩子
const users = [{
path: '/users',
name: 'users',
component: Users,
},
{
path: 'users/:user',
name: 'user',
component: User,
children: [
{ path: 'profile', name: 'profile', component: Profile },
{ path: 'events', name: 'events', component: Events }
]
}
]
推荐阅读
- c++ - 如果不使用 imshow(),则 OpenCV Mat obejct 不会从 VideoCapture 正确填充
- html - 标头无法响应
- php - laravel 8 - 裁剪图像并上传
- php - Wordpress:注册失败后重定向页面 - Elementor 的基本插件
- json - 如何使用钩子 React 将本地 JSON 数据设置为状态
- nestjs - NestJS 创建一个自定义长度验证器以像 IsIn 一样工作,其中允许的长度在数组中传递
- javascript - 在多个 cwd 上运行 Mocha 和 Istanbul
- laravel - 仅过滤基于用户的多态关系
- powerbi - 在 Power BI 中,100% 堆叠条形图是否可以有多个 y 轴和不同的图例?
- node.js - 我的 NodeJS 应用程序无缘无故显示 502 错误