Vue3之与Vite5及VueRouter4整合时遇到问题及处理方法

Vue3之与Vite5及VueRouter4整合时遇到问题及处理方法

文章目录

1. 引入VueRouter4后的问题描述

打开浏览器后,控制台出现下面问题

shell 复制代码
Uncaught SyntaxError: The requested module '/node_modules/.vite/deps/vue-router.js?v=e60463b7' does not provide an export named 'RouteRecordRaw' (at routes.ts:1:9)

2. 解决方法

1. 解决方式1

第一种解决方式:引入的时候以类型的形式引入,前面添加 type

ts 复制代码
import type {RouteRecordRaw} from "vue-router"; //这里加入了type问题解决

export const routes: Array<RouteRecordRaw> = [
    {
        path: '/',
        component: () => import('@/views/Login.vue'),
        name: 'Login',
        meta: {
            title: '登录',
            icon: 'Lock',
            hidden: true
        }
    },
    {
        path: '/layout',
        component: () => import('@/layout/LayoutIndex.vue'),
        name: 'Layout',
        meta: {
            title: '首页',
            icon: 'Monitor',
            hidden: false
        },
        //当访问/layout路由时重定向到二级路由 /home
        redirect: '/home',
        children: [
            {
                path: "/home",
                component: () => import("@/views/HomeIndex.vue"),
                name: "Home",
                meta: {
                    title: '工作台',
                    icon: 'DataBoard',
                    hidden: false
                },
            }
        ]
    },
]

2. 解决方式2

第二种解决方式:找到根目录中的tsconfig.json 文件,设置preserveValueImports:false

json 复制代码
"compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "@/*": ["./src/*"]
    },
 
 //添加这一句
"preserveValueImports": false
相关推荐
长天一色6 分钟前
【ECMAScript 从入门到进阶教程】第三部分:高级主题(高级函数与范式,元编程,正则表达式,性能优化)
服务器·开发语言·前端·javascript·性能优化·ecmascript
NiNg_1_23424 分钟前
npm、yarn、pnpm之间的区别
前端·npm·node.js
秋殇与星河26 分钟前
CSS总结
前端·css
NiNg_1_23426 分钟前
Vue3 Pinia持久化存储
开发语言·javascript·ecmascript
读心悦27 分钟前
如何在 Axios 中封装事件中心EventEmitter
javascript·http
BigYe程普1 小时前
我开发了一个出海全栈SaaS工具,还写了一套全栈开发教程
开发语言·前端·chrome·chatgpt·reactjs·个人开发
神之王楠1 小时前
如何通过js加载css和html
javascript·css·html
余生H1 小时前
前端的全栈混合之路Meteor篇:关于前后端分离及与各框架的对比
前端·javascript·node.js·全栈
花花鱼1 小时前
@antv/x6 导出图片下载,或者导出图片为base64由后端去处理。
vue.js
程序员-珍1 小时前
使用openapi生成前端请求文件报错 ‘Token “Integer“ does not exist.‘
java·前端·spring boot·后端·restful·个人开发