vue项目中如何实现element-ui组件按需引入

 更新时间:2022年05月24日 10:14:22   作者:菜鸟也能飞呀飞  
这篇文章主要介绍了vue项目中如何实现element-ui组件按需引入,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

element-ui组件按需引入

按需引入

1.借助 babel-plugin-component ,引入我们需要的组件,减少项目体积

npm install babel-plugin-component -D

2.修改 babel.config.js 的内容

//babel.config.js 全文内容如下
module.exports = {
  presets: [
    '@vue/cli-plugin-babel/preset'
  ],
  plugins: [
    [
      'component',
      {
        libraryName: 'element-ui',
        styleLibraryName: 'theme-chalk'
      }
    ]
  ]
}

3.创建文件 element.js(名字自定义)

// element.js 全文内容如下,按自己需要引入就好了
import Vue from 'vue'
import {
    Button,
    Form,
    FormItem,
    Input,
    Message,
    Container,
    Header,
    Aside,
    Main,
    Menu,
    Submenu,
    MenuItem,
    Breadcrumb,
    BreadcrumbItem,
    Card,
    Row,
    Col,
    Table,
    TableColumn,
    Switch,
    Tooltip,
    Pagination,
    Dialog,
    MessageBox,
    Tag,
    Tree,
    Select,
    Option,
    Cascader,
    Alert,
    Tabs,
    TabPane
} from 'element-ui'
Vue.use(Button)
Vue.use(Form)
Vue.use(FormItem)
Vue.use(Input)
Vue.use(Container)
Vue.use(Header)
Vue.use(Aside)
Vue.use(Main)
Vue.use(Menu)
Vue.use(Submenu)
Vue.use(MenuItem)
Vue.use(Breadcrumb)
Vue.use(BreadcrumbItem)
Vue.use(Card)
Vue.use(Row)
Vue.use(Col)
Vue.use(Table)
Vue.use(TableColumn)
Vue.use(Switch)
Vue.use(Tooltip)
Vue.use(Pagination)
Vue.use(Dialog)
Vue.use(Tag)
Vue.use(Tree)
Vue.use(Select)
Vue.use(Option)
Vue.use(Cascader)
Vue.use(Alert)
Vue.use(Tabs)
Vue.use(TabPane)
Vue.prototype.$message = Message
Vue.prototype.$confirm = MessageBox.confirm

4.最后在 main.js 中引入这个文件

//main.js 中添加下面这行代码(路径和文件名按自己的来)
import './plugins/element.js'

完整引入

在 main.js 中添加如下代码

import ElementUI from 'element-ui';
Vue.use(ElementUI);

vue项目搭建 + 引入element-ui

初始化单页系统

在学习Vue的过程中,官方网站都是给了非常详细的介绍,所以初始化大型单页应用,官网给的参考资料地址:https://cn.vuejs.org/v2/guide/installation.html

1、NPM

在这里插入图片描述

2、命令行工具 (CLI)

在这里插入图片描述

3、具体操作步骤

【第一步】在004目录下右键,然后选择------在命令提示符中打开

在这里插入图片描述

【第二步】输入npm install vue

在这里插入图片描述

【第三步】安装命令行工具vue-cli:cnpm install vue-cli --global

在这里插入图片描述

【第四步】初始化项目的命令:vue init webpack 项目名

在这里插入图片描述

【第五步】进入项目命令:cd my-project

在这里插入图片描述

【第六步】运行项目:npm run dev

在这里插入图片描述

【第七步】访问项目,如果一切成功,那么会出现下图所示页面,系统初始化成功

在这里插入图片描述

系统目录介绍

1、经过操作,项目my-project已经初始化成功,目录结构如下:

在这里插入图片描述

修改项目

1、修改App.vue,删除无关内容

在这里插入图片描述

<template>
<div id="app">
<router-view/>
</div>
</template>
<script>
export default {
}
</script>
<style>
</style>

2、修改main.js代码

在这里插入图片描述

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import 'element-ui/lib/theme-chalk/index.css'
Vue.config.productionTip = false
/* eslint-disable no-new */
new Vue({
el: '#app',
router,
render: c=> c(App)
})

3、修改HelloWorld.vue组件中的代码

在这里插入图片描述

ElementUI整合项目

在项目中,我们采用ElementUI作为系统框架,所以需要安装ElementUI框架

ElementUI框架官网地址:http://element-cn.eleme.io/#/zh-CN/component/installation

1、安装ElementUI: cnpm i element-ui -S

  • i : 安装指令,全拼:install
  • -S :生产环境,全拼:--save
  • -D :开发环境,全拼:--save--dev
  • -O :可选依赖,全拼:--save--optional
  • -E :精确安装指定模块版本,全称:--save--exact
  • -g:全局安装,全拼:--global

在这里插入图片描述

2、在main.js中引入ElementUI模块

在这里插入图片描述

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
Vue.config.productionTip = false
Vue.use(ElementUI)
/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  render: c => c(App)
})

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue之el-select结合v-if动态控制template显示隐藏方式

    Vue之el-select结合v-if动态控制template显示隐藏方式

    这篇文章主要介绍了Vue之el-select结合v-if动态控制template显示隐藏方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • vue中v-if失效原因及解决方法

    vue中v-if失效原因及解决方法

    本文主要介绍了vue中v-if失效原因及解决方法,一般v-if失效都是和绑定变量有关,下面就来具体介绍一下,感兴趣的可以了解一下
    2023-09-09
  • 自定义Vue组件打包、发布到npm及使用教程

    自定义Vue组件打包、发布到npm及使用教程

    这篇文章主要介绍了自定义Vue组件打包、发布到npm及使用教程 ,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-05-05
  • 浅谈vue 组件中的setInterval方法和window的不同

    浅谈vue 组件中的setInterval方法和window的不同

    这篇文章主要介绍了浅谈vue 组件中的setInterval方法和window的不同,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • vue中$nexttick,$set,$forceupdate的区别

    vue中$nexttick,$set,$forceupdate的区别

    本文主要介绍了vue中$nexttick,$set,$forceupdate的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • vue如何根据url下载非同源文件

    vue如何根据url下载非同源文件

    我们在开发过程中,有时会遇到后端返回的文件地址和我们的网站不是同源的情况下,本文就介绍了vue如何根据url下载非同源文件,感兴趣的可以了解一下
    2021-06-06
  • element实现合并单元格通用方法

    element实现合并单元格通用方法

    这篇文章主要介绍了element实现合并单元格通用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • vue - vue.config.js中devServer配置方式

    vue - vue.config.js中devServer配置方式

    今天小编就为大家分享一篇vue - vue.config.js中devServer配置方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • 解决elementui表格操作列自适应列宽

    解决elementui表格操作列自适应列宽

    这篇文章主要介绍了解决elementui表格操作列自适应列宽,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • Vue双向数据绑定(MVVM)的原理

    Vue双向数据绑定(MVVM)的原理

    这篇文章主要介绍了Vue双向数据绑定的原理,帮助大家更好的理解和学习vue,感兴趣的朋友可以了解下
    2020-10-10

最新评论