vue3集成Element-Plus之全局导入和按需导入

2023-12-08 0 902
目录
  • element-plus集成
  • 1. 全局引入
  • 2. 局部引入(按需引入)
    • 2.1 手动引入
      • 1.安装插件:
      • 2.配置vue.config.js
    • 2.3 自动导入组件以及样式[推荐】
      • 1.安装插件:
      • 2.配置vue.config.js(其他配置方式看官网)
      • 3 直接使用
  • 总结

    element-plus集成

    Element Plus,一套为开发者、设计师和产品经理准备的基于 Vue 3.0 的桌面端组件库:

    • 在Vue2中使用element-ui,而element-plus是element-ui针对于vue3开发的一个UI组件库;
    • 它的使用方式和很多其他的组件库是一样的,所以学会element-plus,其他类似于ant-design-vue、NaiveUI、VantUI都是差不多的;
    • 移动端使用VantUI | MintUI
    • 安装element-plus

    npm install element-plus

    1. 全局引入

    一种引入element-plus的方式是全局引入,代表的含义是所有的组件和插件都会被自动注册:

    //main.ts
    import { createApp } from \’vue\’;
    import App from \’./App.vue\’;
    import ElementPlus from \’element-plus\’
    import \’element-plus/dist/index.css\’
    import router from \’./router\’
    import store from \’./store\’
    createApp(App).use(router).use(store).use(ElementPlus).mount(\’#app\’)

    2. 局部引入(按需引入)

    也就是在开发中用到某个组件对某个组件进行引入:

    2.1 手动引入

    <template>
    <div id=\”app\”>
    <el-row class=\”mb-4\”>
    <el-button disabled>Default</el-button>
    <el-button type=\”primary\” disabled>Primary</el-button>
    <el-button type=\”success\” disabled>Success</el-button>
    <el-button type=\”info\” disabled>Info</el-button>
    <el-button type=\”warning\” disabled>Warning</el-button>
    <el-button type=\”danger\” disabled>Danger</el-button>
    </el-row>
    </div>
    </template>
    <script lang=\”ts\”>
    import { defineComponent } from \’vue\’
    import { ElButton } from \’element-plus\’
    export default defineComponent({
    name: \’App\’,
    components: {
    ElButton
    }
    })
    </script>
    <style lang=\”less\”>
    </style>

    但是我们会发现是没有对应的样式的,引入样式有两种方式:

    全局引用样式;import 'element-plus/dist/index.css'

    局部引用样式(通过 unplugin-element-plus 插件);

    1.安装插件:

    npm install unplugin-element-plus -D

    2.配置vue.config.js

    const ElementPlus= require(\’unplugin-element-plus/webpack\’);
    module.exports = {
    configureWebpack: {
    resolve: {
    alias: {
    components: \’@/components\’
    }
    },
    //配置webpack自动按需引入element-plus样式,
    plugins: [ElementPlus()]
    }
    };

    但是这里依然有个弊端:

    • 这些组件我们在多个页面或者组件中使用的时候,都需要导入并且在components中进行注册;
    • 所以我们可以将它们在全局注册一次;

    import {
    ElButton,
    ElTable,
    ElAlert,
    ElAside,
    ElAutocomplete,
    ElAvatar,
    ElBacktop,
    ElBadge,
    } from \’element-plus\’
    const app = createApp(App)
    const components = [
    ElButton,
    ElTable,
    ElAlert,
    ElAside,
    ElAutocomplete,
    ElAvatar,
    ElBacktop,
    ElBadge
    ]
    for (const cpn of components) {
    app.component(cpn.name, cpn)
    }

    2.3 自动导入组件以及样式[推荐】

    1.安装插件:

    npm install -D unplugin-vue-components unplugin-auto-import

    2.配置vue.config.js(其他配置方式看官网)

    const AutoImport = require(\’unplugin-auto-import/webpack\’);
    const Components = require(\’unplugin-vue-components/webpack\’);
    const { ElementPlusResolver } = require(\’unplugin-vue-components/resolvers\’);
    module.exports = {
    configureWebpack: {
    resolve: {
    alias: {
    components: \’@/components\’
    }
    },
    //配置webpack自动按需引入element-plus,
    plugins: [
    AutoImport({
    resolvers: [ElementPlusResolver()]
    }),
    Components({
    resolvers: [ElementPlusResolver()]
    })
    ]
    }
    };

    3 直接使用

    <template>
    <div id=\”app\”>
    <el-row class=\”mb-4\”>
    <el-button disabled>Default</el-button>
    <el-button type=\”primary\” disabled>Primary</el-button>
    <el-button type=\”success\” disabled>Success</el-button>
    <el-button type=\”info\” disabled>Info</el-button>
    <el-button type=\”warning\” disabled>Warning</el-button>
    <el-button type=\”danger\” disabled>Danger</el-button>
    </el-row>
    </div>
    </template>
    <script lang=\”ts\”>
    import { defineComponent } from \’vue\’
    export default defineComponent({
    })
    </script>
    <style lang=\”less\”>
    </style>

    总结

    到此这篇关于vue3集成Element-Plus之全局导入和按需导入的文章就介绍到这了,更多相关Element-Plus全局导入和按需导入内容请搜索悠久资源网以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源网!

    您可能感兴趣的文章:

    • vue3 element-plus 实现表格数据更改功能详细步骤
    • Vue3使用element-plus实现弹窗效果
    • Vue3Element-plusel-menu无限级菜单组件封装过程
    • vue3自定义组件之v-model实现父子组件双向绑定
    • vue3+element-plusprops中的变量使用v-model报错及解决方案

    收藏 (0) 打赏

    感谢您的支持,我会继续努力的!

    打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
    点赞 (0)

    悠久资源 JavaScript vue3集成Element-Plus之全局导入和按需导入 https://www.u-9.cn/biancheng/javascript/128625.html

    常见问题

    相关文章

    发表评论
    暂无评论
    官方客服团队

    为您解决烦忧 - 24小时在线 专业服务