2024年6月1日发(作者:骆天韵)
vue3 二级路由写法
Vue 3 中的路由默认不支持二级路由。然而,您可以使用以下几种方法实现
二级路由:
方法1:嵌套路由
在 Vue 3 中,您可以使用嵌套路由来实现二级路由。在您的路由配置中,
将每个子路由嵌套在父路由中,如下所示:
```javascript
import { createRouter, createWebHistory } from 'vue-router'
const router = createRouter({
history: createWebHistory(),
routes: [
{
path: '/parent',
name: 'parent',
component: () => import('/views/'),
children: [
{
path: 'child1',
name: 'child1',
component: () => import('/views/')
},
{
path: 'child2',
name: 'child2',
component: () => import('/views/')
}
]
}
]
})
```
在上面的示例中,`/parent` 是父路由,`/parent/child1` 和
`/parent/child2` 是子路由。您可以在父组件中使用 `$` 访问子路由的嵌套
路径。
方法2:使用命名路由
您还可以使用命名路由来实现二级路由。在您的路由配置中,为每个路由指
定一个名称,并在模板中使用 `router-link` 组件的 `to` 属性指定该名称。
如下所示:
```javascript
import { createRouter, createWebHistory } from 'vue-router'
const router = createRouter({
history: createWebHistory(),
routes: [
{
path: '/parent',
name: 'parent',
component: () => import('/views/')
},
{
path: '/parent/:childName',
name: 'child',
component: () => import('/views/')
}
]
})
```
在上面的示例中,`:childName` 是一个动态参数,它将在匹配时被替换为
实际的子路由名称。您可以在父组件中使用 `$` 访问子路由的名称。在模板
中,您可以使用 `router-link` 组件的 `to` 属性指定子路由的名称,如下所
示:
```html
Route
```
2024年6月1日发(作者:骆天韵)
vue3 二级路由写法
Vue 3 中的路由默认不支持二级路由。然而,您可以使用以下几种方法实现
二级路由:
方法1:嵌套路由
在 Vue 3 中,您可以使用嵌套路由来实现二级路由。在您的路由配置中,
将每个子路由嵌套在父路由中,如下所示:
```javascript
import { createRouter, createWebHistory } from 'vue-router'
const router = createRouter({
history: createWebHistory(),
routes: [
{
path: '/parent',
name: 'parent',
component: () => import('/views/'),
children: [
{
path: 'child1',
name: 'child1',
component: () => import('/views/')
},
{
path: 'child2',
name: 'child2',
component: () => import('/views/')
}
]
}
]
})
```
在上面的示例中,`/parent` 是父路由,`/parent/child1` 和
`/parent/child2` 是子路由。您可以在父组件中使用 `$` 访问子路由的嵌套
路径。
方法2:使用命名路由
您还可以使用命名路由来实现二级路由。在您的路由配置中,为每个路由指
定一个名称,并在模板中使用 `router-link` 组件的 `to` 属性指定该名称。
如下所示:
```javascript
import { createRouter, createWebHistory } from 'vue-router'
const router = createRouter({
history: createWebHistory(),
routes: [
{
path: '/parent',
name: 'parent',
component: () => import('/views/')
},
{
path: '/parent/:childName',
name: 'child',
component: () => import('/views/')
}
]
})
```
在上面的示例中,`:childName` 是一个动态参数,它将在匹配时被替换为
实际的子路由名称。您可以在父组件中使用 `$` 访问子路由的名称。在模板
中,您可以使用 `router-link` 组件的 `to` 属性指定子路由的名称,如下所
示:
```html
Route
```