vue3集成Element-Plus之全局導入和按需導入
element-plus集成
Element Plus,一套為開發(fā)者、設計師和產品經理準備的基于 Vue 3.0 的桌面端組件庫:
- 在Vue2中使用element-ui,而element-plus是element-ui針對于vue3開發(fā)的一個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. 局部引入(按需引入)
也就是在開發(fā)中用到某個組件對某個組件進行引入:
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>
但是我們會發(fā)現(xiàn)是沒有對應的樣式的,引入樣式有兩種方式:
全局引用樣式;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全局導入和按需導入內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
vue3中getCurrentInstance不推薦使用及在<script?setup>中獲取全局內容的三種方式
這篇文章主要給大家介紹了關于vue3中getCurrentInstance不推薦使用及在<script?setup>中獲取全局內容的三種方式,文中通過介紹的非常詳細,對大家的學習或者工作具有一定的參考借鑒價值,需要的朋友可以參考下2024-02-02Javascript結合Vue實現(xiàn)對任意迷宮圖片的自動尋路
本文將結合實例代碼介紹Javascript結合Vue實現(xiàn)對任意迷宮圖片的自動尋路,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-06-06vue2 中如何實現(xiàn)動態(tài)表單增刪改查實例
本篇文章主要介紹了vue2 中如何實現(xiàn)動態(tài)表單增刪改查實例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06vue中使用echarts并根據(jù)選擇條件動態(tài)展示echarts圖表
雖然老早就看過很多echarts的例子, 但自己接觸的項目中一直都沒有真正用到過,直到最近才開始真正使用,下面這篇文章主要給大家介紹了關于vue中使用echarts并根據(jù)選擇條件動態(tài)展示echarts圖表的相關資料,需要的朋友可以參考下2023-12-12Vue?中的?computed?和?watch?的區(qū)別詳解
這篇文章主要介紹了Vue中的computed和watch的區(qū)別詳解,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09