# 前言 ::: tip 提示 列举了一些常见的问题。有问题可以先来这里寻找,看是否有相关解答,没有的话可以上 [issue](https://github.com/kailong321200875/vue-element-plus-admin/issues) 中提问或者搜索 ::: - 在进行开发时,先着重看下[项目指南](https://element-plus-admin-doc.cn/guide/introduction.html),把大体文档都过一遍,虽然文档写的可能不能满足所有人的需要,但好歹是有,毕竟项目框架上手有难度。 - 一些非框架内的问题,可以上百度或者谷歌上搜索。 - 如果文档有落后或者不明确的,可以提 issue ,慢慢完善,毕竟文档的积累完善并不是靠一个人能完成的。 ## 关于修改了 store 的默认值,无法应用问题 因为项目中有的 Store 默认开始了持久化,所以不管你修没修改默认值,都会优先默认取缓存中的值,所以如果修改完默认值之后,还请手动清除下浏览器的 `localStorage` ,默认值就会生效了。 ## 控制台路由警告问题 本地运行之后,会出现路由警告 ``` js [Vue Router warn]: No match found for location with path "/authorization/menu" ``` 这个无需关心,是vue-router的问题,项目打包上线后是不会有次警告,所以该问题可以忽略。 ## 本地启动首次加载慢 请自行去百度下 vite 快是怎么个快法,本地运行启动,都是按需加载,一次性加载了几十个资源,当然会比较慢,有了缓存之后非首次就会实现秒开了。 目前项目中已经对于启动时间进行了优化,本地默认加载了全部的 `element-plus` 的样式文件,会多多少少减少请求资源数量。 启动快慢还是得根据当前文件引用的资源数量来决定。 ## 路由切换页面刷新的问题 这是因为你在该路由中使用了第三方模块,这个模块是没有预加载的,所以需要重新去加载这个模块,然后就会出现 `page reload`,极大的影响了开发体验,所以可以在 `vite.config.ts` 中去配置预加载列表:`optimizeDeps.include`,这样在服务启动的使用,会先把这些模块给预先加载打包。 ## 依赖安装问题 - 如果依赖安装不了或者启动报错可以先尝试 删除 `pnpm-lock` 和 `node_modules`,然后重新运行 `pnpm i` - 可以尝试配置国内镜像安装 - 请确保项目路径没有特殊字符如:中文、韩文、日文以及空格 - 请确保 node.js 版本大于等于 18 - 请确保包管理器使用的是 pnpm ## 打包文件过大 由于完整版引入了许多第三方模块,所以打包体积会比较大,可以自行删除不需要的第三方模块,或者使用精简版(mini分支)来进行开发。 合理的进行拆包,目前项目中对一些比较大的第三方模块进行了拆包处理。 ## 部署上线运行启动慢 - 请检查打包体积是否合理 - 请确保网络正常 - 可以开启cdn缓存 - 可以开启http2 - 开启gzip ## 菜单定制化 菜单是根据路由配置来生成,请先看下已有的路由配置是否可以满足你的需要,如果不满足,可以自行去定制化。可以查看[路由相关文档](https://element-plus-admin-doc.cn/guide/router.html) ## 组件使用问题 在使用组件的时候,遇到问题,可以先看下对应的在线例子,看是否有对应的代码,基本上覆盖了`95%`的使用方式,或者查看对应的组件文档。 ## 编辑器代码报错 项目中大部分使用了 `tsx` ,所以原先 `template` 的一些代码规范就不适用了,如 `v-if` 得使用 `{判断条件 ? 成立 : 不成立}` 来进行显示隐藏,可以查阅下相关文档。 并且请确保如果要使用 `tsx` 语法, `script` 是否声明了 `lang="tsx"` ## 添加路由之后,页面无法展示 如果是在项目中直接添加静态路由,需要确保 appStore 中的 `dynamicRouter` 和 `serverDynamicRouter` 为 `false`,并且手动清除下浏览器的 `localStorage` ## 添加新的 vue 文件后,编辑器类型报错 这是 `Volar` 插件的问题,一般重启下编辑器即可生效。 ## 如何启用非在线图标 设置 VITE_USE_ONLINE_ICON=false ,可能在有的版本设置之后会无效,是因为有BUG,可以复制最新版本的 `uno.config.ts` 和 `Icon.vue` 的最新代码。