1.npm安装(详见element官网:https://element.eleme.cn/#/zh-CN/component/installation)
npm i element-ui -S
2. 在main.js项目入口文件中引入Element
*2.1完整引入*
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);
*2.2按需引入*
首先,安装 babel-plugin-component:
npm install babel-plugin-component -D
然后,将 .babelrc 修改为:
{
"presets": [["es2015", { "modules": false }]],
"plugins": [
[
"component",
{
"libraryName": "element-ui",
"styleLibraryName": "theme-chalk"
}
]
]
}
接下来,如果你只希望引入部分组件,比如 Button 和 Select,那么需要在 main.js 中写入以下内容:
import { Button, Select } from 'element-ui';
Vue.component(Button.name, Button);
Vue.component(Select.name, Select);
/* 或写为
* Vue.use(Button)
* Vue.use(Select)
*/
请注意:在这些都已经完成后运行npm run dev是可能会出错的。因为webpack.config.js配置文件中可能没有定义解析woff文件的语句。此时需要加上(如果没有安装file-loader的需要先安装npm install --save-dev file-loader):
{ test: /\.(eot|svg|ttf|woff|woff2)(\?\S*)?$/, use: 'file-loader' }
这样编译就能成功了。但可能会出现字体样式无法使用。
这时候你需要检查你的配置文件中是否有重复的woff 什么的,把重复的删除在重新npm run dev就好了。比如:
module: {
rules: [
{ test: /\.(jpg|png|gif|svg|ttf|jpeg)$/, use: 'url-loader?name=[name].[ext]' },
{ test: /\.(eot|svg|ttf|woff|woff2)(\?\S*)?$/, use: 'file-loader' }
]
}
把重复的去掉即可。如下:
module: {
rules: [
{ test: /\.(jpg|png|gif|svg|ttf|jpeg)$/, use: 'url-loader?name=[name].[ext]' },
{ test: /\.(eot|woff)(\?\S*)?$/, use: 'file-loader' }
]
}