标签:vue element unplugin plus vue3 import vite
vue3与vite下,element-plus组件库怎么实现按需引入
按需引入意义:减小打包后的包体积
全量引入
// main.js
import ElementPlus from 'element-plus';
import 'element-plus/dist/index.css';
import zhCn from 'element-plus/lib/locale/lang/zh-cn';
...
app.use(ElementPlus, { locale: zhCn });
手动按需引入
<template>
<div class="app">
<el-button>按钮</el-button>
</div>
</template>
<script lang="ts">
import { defineComponent } from 'vue'
// 局部引入
import { ElButton } from 'element-plus'
import 'element-plus/theme-chalk/el-button.css'
import 'element-plus/theme-chalk/base.css'
export default defineComponent({
components: { ElButton },
setup() {
return {}
}
})
</script>
<style lang="less"></style>
自动按需引入同时设置国际化
- 安装依赖
unplugin-auto-import
和unplugin-vue-components
yarn add unplugin-auto-import unplugin-vue-components -D
- 修改
vite.config.js
文件
import { defineConfig } from 'vite';
import AutoImport from 'unplugin-auto-import/vite';
import Components from 'unplugin-vue-components/vite';
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers';
export default defineConfig({
...
plugins: [
...
AutoImport({
resolvers: [ElementPlusResolver({ importStyle: true })],
}),
Components({
resolvers: [ElementPlusResolver({ importStyle: true })],
}),
],
});
- 入口文件
App.vue
设置国际化
<template>
<ElConfigProvider :locale="locale">
<router-view />
</ElConfigProvider>
</template>
<script>
import { defineComponent } from 'vue'
import { ElConfigProvider } from 'element-plus'
import zhCn from 'element-plus/lib/locale/lang/zh-cn'
export default defineComponent({
components: {
ElConfigProvider,
},
setup() {
return {
locale: zhCn,
}
},
})
</script>
<style lang="less"></style>
大功告成
标签:vue,element,unplugin,plus,vue3,import,vite 来源: https://www.cnblogs.com/sk-3/p/16697573.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。