|
@@ -0,0 +1,74 @@
|
|
|
+# 前言
|
|
|
+
|
|
|
+::: 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"`
|