内容导读
1. Element-plus的概述
2. vue3与Element-plus整合
3. Element-plus基本应用
一、Element-plus概述
1. Element-plus简介
是ElementUI的升级版,是一套基于vue2与vue3的桌面端组件库,它提供了丰富的组件帮助开发人员快速构建功能强大、风格统一的页面。
官方中文站点:一个 Vue 3 UI 框架 | Element Plus
2. 安装
注意:确保已安装好node.js-v21.7及以上版本,同时安装好了vue与vue-cli,并通过vue脚手架方式创建好前端vue3项目,比如myapp
方式一:vue ui 可视化安装(建议使用)
windows命令行窗口输入vue ui 打开可视化窗口
vue项目管理可视化窗口
方式二:通过cnpm命令安装,但目前安装不稳定
#这里一定要用cnpm命令安装
# 进入项目文件夹,比如 E:\myweb\myapp>,这里使用--save局部安装,如果全局安装可以使用-g
cnpm install element-plus --save
# 或简写为
cnpm i element-plus -S
# 项目中全局引入element-plus,详细整合请参考vue与element-plus整合
#在main.js 中全局注册,这种方式引入后,在全局中使用都不需要import就可以直接使用
import App from './App.vue';
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
const app = createApp(App)
app.use(ElementPlus)
安装依赖: 执行cnpm install 命令安装依赖
二、vue3与Element-plus整合
2.1 安装环境
1、首先,确保已安装好node.js与npm、最新的vue3与对应的vue-cli
vue -V #查看vue-cli的版本,验证是否已安装
npm install -g @vue/cli #如果未安装vue3则执行此命令
2、安装element-plus
方式一:通过命令 vue ui 可视化安装,如果之前已通过此方式安装过了,则跳过
按界面提示安装element-plus依赖(参考上边vue项目管理可视化窗口)
方式二:用cnpm命令安装,见上。目前不稳定,建议用方式一
cnpm install element-plus --save #如果之前已安装过,此处可以跳过
2.2 全局引入
1、在main.js主文件中引入以下内容
import { createApp } from 'vue'
import App from './App.vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
const app = createApp(App)
//全局绑定到vue3实例对象上
app.use(ElementPlus);
//还可以全局绑定更多的工具
app.mount('#app');
2、在组件文件MyBtn.vue文件使用element-plus的按钮组件
<template>
<div class="mybtn">
<el-row class="mb-4">
<el-button>Default</el-button>
<el-button type="primary">Primary</el-button>
<el-button type="success">Success</el-button>
<el-button type="info">Info</el-button>
<el-button type="warning">Warning</el-button>
<el-button type="danger">Danger</el-button>
</el-row>
<el-row class="mb-4">
<el-button plain>Plain</el-button>
<el-button type="primary" plain>Primary</el-button>
<el-button type="success" plain>Success</el-button>
<el-button type="info" plain>Info</el-button>
<el-button type="warning" plain>Warning</el-button>
<el-button type="danger" plain>Danger</el-button>
</el-row>
<el-row class="mb-4">
<el-button round>Round</el-button>
<el-button type="primary" round>Primary</el-button>
<el-button type="success" round>Success</el-button>
<el-button type="info" round>Info</el-button>
<el-button type="warning" round>Warning</el-button>
<el-button type="danger" round>Danger</el-button>
</el-row>
<el-row>
<el-button :icon="Search" circle />
<el-button type="primary" :icon="Edit" circle />
<el-button type="success" :icon="Check" circle />
<el-button type="info" :icon="Message" circle />
<el-button type="warning" :icon="Star" circle />
<el-button type="danger" :icon="Delete" circle />
</el-row>
</div>
</template>
<script>
export default {
name: 'MyBtn'
}
</script>
<style>
</style>
3、在顶层组件文件App.vue中使用其它组件标签
<template>
<img alt="Vue logo" src="./assets/logo.png">
<!--使用自定义标签-->
<MyBtn />
<HelloWorld msg="Welcome to Your Vue.js App"/>
</template>
<script>
// 导入HelloWorld组件
import HelloWorld from './components/HelloWorld.vue'
// 导入组件MyBtn
import MyBtn from './components/MyBtn.vue'
export default {
name: 'App',
//定义自义的组件文件,并在组件模板中使用
components: {
HelloWorld,
MyBtn
}
}
</script>
<style>
#app {
font-family: Avenir, Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
color: #2c3e50;
margin-top: 60px;
}
</style>
2.3 部署运行
命令窗口方式切换到项目文件夹,输入:cnpm run serve 运行项目,效果如图所示:
三、Element-plus基本应用
3.1 Container 布局容器
用于布局的容器组件,方便快速搭建页面的基本结构
<el-container>:外层容器。当子元素中包含 <el-header> 或 <el-footer> 时,全部子元素会垂直上下排列,否则会水平左右排列
<el-header>:顶栏容器
<el-aside>:侧边栏容器
<el-main>:主要区域容器
<el-footer>:底栏容器
案例解析: 整个蓝色方框为一个container,红色方框为一个container,黄色方框为一个container
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>element入门</title>
<!-- 引入ElementUI样式的兼容模式-->
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<script src="https://unpkg.com/vue/dist/vue.js"></script>
<!-- 引入ElementUI组件库 -->
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
</head>
<body>
<!--以下代码也可以用到vue3的组件文件中-->
<div id="app">
<el-container>
<el-header>
header
</el-header>
<el-container>
<el-aside width="200px">aside</el-aside>
<el-container>
<el-main>main</el-main>
<el-footer>footer</el-footer>
</el-container>
</el-container>
</el-container>
</div>
<style>
.el-header, .el-footer {
background-color: #B3C0D1;
color: #333;
text-align: left;
line-height: 60px;
}
.el-aside {
background-color: #D3DCE6;
color: #333;
text-align: center;
line-height: 200px;
}
.el-main {
background-color: #E9EEF3;
color: #333;
text-align: center;
line-height: 590px;
}
</style>
</body>
<script>
new Vue({
el:'#app'
});
</script>
</html>
3.2 实用小组件
组件文件中要先引入.css、element-plus依赖
1、icon小图标
<i class="el-icon-edit"></i>
<i class="el-icon-share"></i>
<i class="el-icon-delete"></i>
<el-button type="primary" icon="el-icon-search">搜索</el-button>
2、button按钮
<el-row>
<el-button>默认按钮</el-button>
<el-button type="primary">主要按钮</el-button>
<el-button type="success">成功按钮</el-button>
<el-button type="info">信息按钮</el-button>
<el-button type="warning">警告按钮</el-button>
<el-button type="danger">危险按钮</el-button>
</el-row>
<el-row>
<el-button plain>朴素按钮</el-button>
<el-button type="primary" plain>主要按钮</el-button>
<el-button type="success" plain>成功按钮</el-button>
<el-button type="info" plain>信息按钮</el-button>
<el-button type="warning" plain>警告按钮</el-button>
<el-button type="danger" plain>危险按钮</el-button>
</el-row>
<el-row>
<el-button round>圆角按钮</el-button>
<el-button type="primary" round>主要按钮</el-button>
<el-button type="success" round>成功按钮</el-button>
<el-button type="info" round>信息按钮</el-button>
<el-button type="warning" round>警告按钮</el-button>
<el-button type="danger" round>危险按钮</el-button>
</el-row>
<el-row>
<el-button icon="el-icon-search" circle></el-button>
<el-button type="primary" icon="el-icon-edit" circle></el-button>
<el-button type="success" icon="el-icon-check" circle></el-button>
<el-button type="info" icon="el-icon-message" circle></el-button>
<el-button type="warning" icon="el-icon-star-off" circle></el-button>
<el-button type="danger" icon="el-icon-delete" circle></el-button>
</el-row>
3、Link文字链接
<div>
<el-link href="https://element.eleme.io" target="_blank">默认链接</el-link>
<el-link type="primary">主要链接</el-link>
<el-link type="success">成功链接</el-link>
<el-link type="warning">警告链接</el-link>
<el-link type="danger">危险链接</el-link>
<el-link type="info">信息链接</el-link>
</div>
说明: 更多小组件的应用请参考element-puls官方网站。