基于 Vue 的最佳实践
本项目是基于 Web 开发最佳实践 的扩展
解决 globalThis 的问题
参考 : 解决浏览器端 globalThis is not defined 报错
解决方案
在 <head>
中加入
1 | <script> |
在低版本手机上出现白屏的问题
在低版本手机上访问页面需要对代码打包进行
es2015
转义
1 | // ... |
组件的自动加载
自动加载的弱项
如果组件使用自动加载也可以, 但是需要自动引入app.use(Comp)
这种方式, 并在配置文件中加入 components
全部加载的弱项
全部加载会在打包的时候 minify 会解析所有的 css 样式, 导致时间过长 (10min+)
所以组件使用 unplugin-vue-components
1 | import Components from "unplugin-vue-components/vite"; |
移除 console 日志
打包启用 terser, 配置 tersor 的选项
1 | export default defineConfig(({ mode }) => { |
为开发环境提供 https 证书
在开发的时候有时候需要 https 证书(例如浏览器通知需要在 https 证书下才可以打开)
插件 : vite-plugin-mkcert
安装插件
1 | yarn add vite-plugin-mkcert -D |
配置证书
1 | import {defineConfig} from'vite' |
Component name “XXX“ should always be multi-word
找到根目录下的 .eslintrc.js
, 加入如下行, 对于文件名不是多文件名称的可以关闭提示
1 | module.exports = { |
vue router 新窗口打开页面
1 | const { href } = router.resolve({ name: 'pc.chat' }); |
参考
语雀镜像 : 基于 Vue 的最佳实践 ,点此 提问
基于 Vue 的最佳实践