elementui编辑
安装 Element UI
通过 npm 或 yarn 安装 Element UI:
npm install element-ui --save
# 或
yarn add element-ui
引入 Element UI
在 Vue 项目的入口文件(如 main.js)中全局引入:
import Vue from 'vue';
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);
按需引入
若需优化体积,可通过 babel-plugin-component 按需引入组件:
- 安装插件:
npm install babel-plugin-component -D - 修改
babel.config.js:module.exports = { plugins: [ [ "component", { "libraryName": "element-ui", "styleLibraryName": "theme-chalk" } ] ] }; - 在组件中局部引入:
import { Button, Input } from 'element-ui'; export default { components: { ElButton: Button, ElInput: Input } };
主题定制
- 使用官方主题工具生成自定义主题文件(主题生成器)。
- 替换默认 CSS:
import Vue from 'vue'; import ElementUI from 'element-ui'; import './theme/index.css'; // 替换为自定义主题文件
Vue.use(ElementUI);
### 常用组件示例
#### 表单验证
```javascript
<template>
<el-form :model="form" :rules="rules" ref="form">
<el-form-item label="用户名" prop="name">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-button @click="submit">提交</el-button>
</el-form>
</template>
<script>
export default {
data() {
return {
form: { name: '' },
rules: { name: [{ required: true, message: '请输入用户名', trigger: 'blur' }] }
};
},
methods: {
submit() {
this.$refs.form.validate(valid => {
if (valid) alert('验证通过');
});
}
}
};
</script>
表格与分页
<template>
<el-table :data="tableData" border>
<el-table-column prop="date" label="日期"></el-table-column>
<el-table-column prop="name" label="姓名"></el-table-column>
</el-table>
<el-pagination
@current-change="handlePageChange"
:current-page="currentPage"
:page-size="10"
:total="100">
</el-pagination>
</template>
<script>
export default {
data() {
return {
tableData: [{ date: '2023-01-01', name: '张三' }],
currentPage: 1
};
},
methods: {
handlePageChange(page) {
this.currentPage = page;
}
}
};
</script>
注意事项
- 版本兼容性:Element UI 需与 Vue 2.x 配合使用,Vue 3.x 需使用 Element Plus。
- 国际化:通过
Vue.use(ElementUI, { locale: 'zh-CN' })设置语言。 - 图标库:需单独引入
@element-ui/icons或使用第三方图标库。







