我有一个基本组件,它由一些其他组件扩展,如下所示:
// UserForm
<template>
<div class="user-form"></div>
</template>
// AdministratorForm
<template>
<UserForm v-model="administrator">
// additional fields
</UserForm>
</template>
现在,我想设置一个动态布线,其中零部件由一个参数选择:
{
path: '/users/:userTyp/:programId',
name: 'user-create',
component: () => import('@/modules/users/forms/'+ userTyp+ 'FormPage.vue'),
props: (route: any) => ({
programId: route.params.programId
})
}
有没有什么方法可以实现动态路由,以及何时和如何实现?
我使用以下版本:
- "版本":"^2.6.11",
- "vue路由器":"^3.2.0版本"
1条答案
按热度按时间cbeh67ev1#
您可以动态导入Vue文件中的组件,而不是尝试导入路由器定义中的组件。一种方法是使用:is属性,但它仍然包含不必要的组件导入。更好的方法是使用calculated属性来导入use dynamic imports from Webpack。
你能做的就是,给你的路线加上一个组成部分-
在
SomeComponent.vue
中,您可以根据路由参数动态导入组件-x一个一个一个一个x一个一个二个x
希望有帮助。