elementUI源码修改定制
1.修改elementUI源码
首先从Git上克隆代码或者下载代码包

进入文件夹打开终端或Git Bash Here,运行npm install 安装依赖包。npm run dev 打开网页http://localhost:8085/,会看到elementUI首页
进入element文件夹,packages文件夹里的各个组件文件夹就是我们要修改的源码文件夹
比如我们进入 button文件夹里面的src文件,找到button.vue,我们修改class="el-button",添加class="el-button el-button-customize"一个自定义的class,然后保存。切换本地 element首页,找到button组件,可以用审查元素查看,就会看到class="el-button el-button-customize"已经被修改了。
执行npm run dist,会在element文件夹里面生成lib文件夹
复制lib文件夹到自己的项目目录
找到node_modules并进入,找到element-ui文件夹替换里面的lib文件夹
验证是否成功
进入自己的项目文件目录,打开并运行项目,然后找到任意的button组件,验证button是否添加了自定义的el-button-customize 。
2.定制elementUI
有时我们会觉得elementUI库太大,这时我们可以删减项目不需要的组件达到目的
在element文件夹,找到components.json文件,删除项目不要的组件配置即可
原配置

我删减后的配置

这样打包后的lib文件夹就会小很多,这里需要提示一下,因笔者开发模式不是webpack模块化开发,而是每个页面需要用到,故把cnd资源下载下来用,后期发现容器空间不足,才会想办法删减不需要组件。我用到的是打包后的lib/index.js(此文件是所有组件模块的集合),lib/theme-chalk/index.css(此文件是所有组件模块的样式),相当于elementUI官网cnd引的两个文件。希望对看到这篇博客的你有所帮助。
有些地方借鉴https://segmentfault.com/a/1190000010932321此博客
elementUI源码修改定制的更多相关文章
- 记一次ElementUI源码修改过程
修改目的 使用ElementUI el-tree过程发现选中节点,键盘移动上下键时(key down\key up)el-tree默认高亮移动的节点,业务上需要重写此事件. 从官网发现该事件没有暴露 ...
- Android6.0 源码修改之 仿IOS添加全屏可拖拽浮窗返回按钮
前言 之前写过屏蔽系统导航栏功能的文章,具体可看Android6.0 源码修改之屏蔽导航栏虚拟按键(Home和RecentAPP)/动态显示和隐藏NavigationBar 在某些特殊定制的版本中要求 ...
- el-upload源码修改跳坑
之前给element-ui提了一个问题,结果没有鸟我,没办法,只能修改源码来满足需求了 (备注:element-ui2依然没有修改,为了迎合产品还是要改源码) 本文讨论的组件属性仅限于list-typ ...
- 05.ElementUI源码学习:项目发布配置(github pages&npm package)
0x00.前言 书接上文.项目第一个组件已经封装好,说明文档也已编写好.下面需要将说明文档发布到外网上,以此来展示和推广项目,使用 Github Pages功能实现.同时将组件发布之 npm 上,方便 ...
- Java学习-039-源码 jar 包的二次开发扩展实例(源码修改)
最近在使用已有的一些 jar 包时,发现有些 jar 包中的一些方法无法满足自己的一些需求,例如返回固定的格式,字符串处理等等,因而需要对原有 jar 文件中对应的 class 文件进行二次开发扩展, ...
- python的paramiko源码修改了一下,写了个操作命令的日志审计 bug修改
python的paramiko源码修改了一下,写了个操作命令的日志审计,但是记录的日志中也将backspace删除键记录成^H这个了,于是改了一下代码,用字符串的特性. 字符串具有列表的特性 > ...
- Android6.0 源码修改之 Contacts应用
一.Contacts应用的主界面和联系人详情界面增加顶部菜单添加退出按钮 通过Hierarchy View 工具可以发现 主界面对应的类为 PeopleActivity 联系人详情界面对应的类为 Qu ...
- Android6.0 源码修改之屏蔽系统短信功能和来电功能
一.屏蔽系统短信功能 1.屏蔽所有短信 android 4.2 短信发送流程分析可参考这篇 戳这 源码位置 vendor\mediatek\proprietary\packages\apps\Mms\ ...
- openfire源码修改后如何打包部署到linux服务器上
原文:http://blog.csdn.net/jinzhencs/article/details/50457152 1.linux版本的3.10.3解压部署启动(过程略,参考我的另一篇博文http: ...
随机推荐
- 实战DeviceIoControl 之五:列举已安装的存储设备
Q 前几次我们讨论的都是设备名比较清楚的情况,有了设备名(路径),就可以直接调用CreateFile打开设备,进行它所支持的I/O操作了.如果事先并不能确切知道设备名,如何去访问设备呢? A 访问设备 ...
- dojo中的xhrPost请求(JSON)
dojo中的xhrPost请求 dojo.xhrPost({ url:"../area.action", content:{ areaCode:areaCode }, handle ...
- 通过地址获得经纬度(百度Geocoding API)
1.什么是Geocoding? Geocoding API 是一类简单的HTTP接口,用于提供从地址到经纬度坐标或者从经纬度坐标到地址的转换服务,用户可以使用C# .C++.Java等开发语言发送HT ...
- JDBC异常总结
1.异常一 (1)详情如下 com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source reje ...
- 如何给filter添加自定义接口
.在Cfilter类的定义中实现Interface接口的函数的定义: //-----------------------Interface methods----------------------- ...
- linux配置wifi连接并通过ssh代理开启socks代理
1, 命令行配置连接wifi具体我是用的cubieboard2上Debian主机,其中配置wifi的命令行有wpa_cli,具体用法步骤如下.wpa_cli 命令行执行需要root权限,详细用法请见 ...
- Ajax前后台交互函数
function AJAX(obj){ //做网络请求的时候参数以对象的形式传递进来 //我们规定obj里面包含属性:url, //请求方式type, //date前端给后端传递的参数 //回调函数s ...
- Defeat the Enemy UVALive - 7146
Long long ago there is a strong tribe living on the earth. They always have wars and eonquer other ...
- 异常-----java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.core.KeyFactory
SSH 类库问题 java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer2009- ...
- Linux之批量挂载硬盘
############parted工具分区############### #!/bin/bash #shell脚本开头格式PATH=/bin:/sbin:/usr/bin:/usr/sbin #保证 ...