vue3+vite+view-ui-plus 实现按需引用

发布时间 2023-08-10 21:11:41作者: 久依

现有项目使用的是 vue3+vite+view-ui-plus

由于公司要求秒开速度对h5页面进行优化,首先想到的是把组件的引用从全量引用打包改成按需引用;

下面是改之前的 view-ui-plus 引用配置,简单粗暴直接在 main.ts 中引用  

import ViewUIPlus from 'view-ui-plus'
import 'view-ui-plus/dist/styles/viewuiplus.css';
const app = createApp(App)
app.use(createPinia())
    .use(ViewUIPlus)
    .use(router)
    .mount('#app')

  打包的时候显示的包大小 :

 698.66 kb 是合包的量,哪怕我只引用了一个组件 打的 view-ui 的包也是 698.66kb,这肯定是全量打包了,于是我去 iviewui 官网 搜索一下 ,还真有按需引入的相关配置

 然后我也是这么配置的,也是这么引用的,可打包的时候还是和上面的结果一样,包的大小一点儿都没变小,各种试,各种配置,babel-plugin-import 插件也安装了,就是不行;

在做了小半天的测试之后,突然发现这样一个帖子 vue3如何按需加载第三方组件库详解   原来是安装的插件不对,后来安装了官方的 按需引用插件 vite-plugin-importer 再进行一下配置就行了

//vite.config.js 引用插件
import usePluginImport from 'vite-plugin-importer'
//配置 vite.config.js 文件
 plugins: [
      vue(), 
      vueJsx(), 
      usePluginImport({
        libraryName: 'view-ui-plus',
        libraryDirectory: "src/components"
      }),
    ],

  进行一系列配置之后再打包 看效果

很明显组件库的包是按需引用了;OK 成功,今天到此为止;