前言
提示
列举了一些常见的问题。有问题可以先来这里寻找,看是否有相关解答,没有的话可以上 issue 中提问或者搜索
- 在进行开发时,先着重看下项目指南,把大体文档都过一遍,虽然文档写的可能不能满足所有人的需要,但好歹是有,毕竟项目框架上手有难度。
- 一些非框架内的问题,可以上百度或者谷歌上搜索。
- 如果文档有落后或者不明确的,可以提 issue ,慢慢完善,毕竟文档的积累完善并不是靠一个人能完成的。
关于修改了 store 的默认值,无法应用问题
因为项目中有的 Store 默认开始了持久化,所以不管你修没修改默认值,都会优先默认取缓存中的值,所以如果修改完默认值之后,还请手动清除下浏览器的 localStorage
,默认值就会生效了。
控制台路由警告问题
本地运行之后,会出现路由警告
[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
菜单定制化
菜单是根据路由配置来生成,请先看下已有的路由配置是否可以满足你的需要,如果不满足,可以自行去定制化。可以查看路由相关文档
组件使用问题
在使用组件的时候,遇到问题,可以先看下对应的在线例子,看是否有对应的代码,基本上覆盖了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
的最新代码。