vite+vue3路由组件动态引入
使用vite+vue3开发项目 路由使用异步加载方式引入:
import {defineAsyncComponent} from 'vue'
export const routes = [
{ path: "/about", component:defineAsyncComponent( ()=>import('./views/About.vue') ), name: "about", meta: { isLogin: false } }
]
从文档找到这种方式,页面可以正常展示但是不能进行点击之类的操作了。请问有解决办法吗
如果您使用 Vite + Vue3 开发项目,在路由中使用动态引入方式异步加载组件,但是页面无法进行点击等操作,可能是因为路由未正确注册到 Vue Router 中。您可以尝试以下方法进行解决:
// router.js
import { createRouter, createWebHistory } from 'vue-router'
const routes = [
{
path: "/about",
name: "About",
component: () => import('./views/About.vue'),
meta: { isLogin: false }
}
]
const router = createRouter({
history: createWebHistory(),
routes
})
export default router
确保您的路由链接已被正确标记为 组件,例如:
```javascript
<template>
<div>
<router-link to="/about">About</router-link>
</div>
</template>
```
如果上述方法无法解决问题,您可以在控制台查看是否有报错信息