按照官方文档的步骤来,踩了一些坑,记录下一、安装elementUInpm i element-ui -S二、安装babel-plugin-componentnpm install babel-plugin-component -D然后官方文档的原话是将 .babelrc 修改为:{presets:...
按照官方文档的步骤来,踩了一些坑,记录下
一、安装elementUI
npm i element-ui -S
二、安装babel-plugin-component
npm install babel-plugin-component -D
然后官方文档的原话是
将 .babelrc 修改为:
{ "presets": [["es2015", { "modules": false }]], "plugins": [ [ "component", { "libraryName": "element-ui", "styleLibraryName": "theme-chalk" } ] ] }
首先,.babelrc这个文件没有提路径,有的人尝试直接根目录下新建这个文件然后修改成功,这里其实在项目里会多一个babel.config.js,进去修改成如下就可以了
module.exports = {
"presets": [["es2015", { "modules": false }]],
"plugins": [
[
"component",
{
"libraryName": "element-ui",
"styleLibraryName": "theme-chalk"
}
]
]
}
这里先跳过,最后再看,如果最后运行失败,提示Cannot find module ‘babel-preset-es2015’,可以先安装,
npm install babel-preset-es2015 -D
然后把上述的babel.config.js文件改成如下即可
module.exports = {
"presets": [["@babel/preset-env", { "modules": false }]],
"plugins": [
[
"component",
{
"libraryName": "element-ui",
"styleLibraryName": "theme-chalk"
}
]
]
}
三、在main.js中使用引入即可,按照官方文档来
import Vue from 'vue';
import { Button, Select } from 'element-ui';
import App from './App.vue';
Vue.component(Button.name, Button);
Vue.component(Select.name, Select);
/* 或写为
* Vue.use(Button)
* Vue.use(Select)
*/
new Vue({
el: '#app',
render: h => h(App)
});
每想加一个组件,对应需要在import { Button, Select } from 'element-ui';中新增,然后再使用,Vue.component(XXXXX.name, XXXXX);或者Vue.use(XXXXXX),XXXX代表对应组件名
结束,文件引用成功,也可以把代码规整下,elementUI的代码放在插件中统一管理,在src目录下新建文件夹plugins,用来存放引入的组件,在plugins下新建elementUI.js,文件内容为
//elementUI.js文件内容
import Vue from 'vue';//这行必须加,不然会报错
import {
Button,
Select
} from 'element-ui';
Vue.use(Button)
Vue.use(Select)
对应的main.js引入即可
main.js对应的修改
import Vue from 'vue';
import App from './App.vue'
import './plugins/elementUI.js'//这行就是引入的代码
Vue.config.productionTip = false;
new Vue({
render: h => h(App),
}).$mount('#app')
本文标题为:elementUI起步按需引用配置(vue+npm)
基础教程推荐
- vue离线环境如何安装脚手架vue-cli 2025-01-19
- 浅析canvas元素的html尺寸和css尺寸对元素视觉的影响 2024-04-26
- this[] 指的是什么内容 讨论 2023-11-30
- CSS3的几个标签速记(推荐) 2024-04-07
- Ajax实现动态加载数据 2023-02-01
- 关于文字内容过长,导致文本内容超出html 标签宽度的解决方法之自动换行 2023-10-28
- js禁止页面刷新与后退的方法 2024-01-08
- 基于Vue制作组织架构树组件 2024-04-08
- 浅谈Vue2和Vue3的数据响应 2023-10-08
- JS前端广告拦截实现原理解析 2024-04-22
