elementUI源码修改的爬坑之旅
今天由于项目需要,想在Tree组件的前面增加一个icon图标,根据不同类型增加不同的图标,我修改了elementUI的源代码,发布到npm上去成功使用,记录下过程中所碰到的问题,
首先看下最后的效果:
下面简单记录下过程和过程中所遇到的问题以及问题的解决方案。
- 首先把elementUI的项目从git上克隆下来:
git clone https://github.com/ElemeFE/element.git
克隆完成后就会看到有个名叫element的文件夹出现:
然后进入element文件夹:
cd element
安装相关的依赖:
npm install
第一步已经完成。
- 修改源码,我修改的部分在packages里面,
我修改完成后执行:
npm run dist
就会生成一个lib文件夹,这部分是我们调试用的,刚克隆下来没有run dist之前是没有lib文件夹的,我修改完源码之后,运行run dist 后将生产的lib文件夹拷贝到项目中的node_modules中的element-ui文件夹中去,效果OK。
3.上传npm 包。
第一次是在网上看大佬说只需要修改里面的config.js文件里面的名字和package.json里面的包名就可以了,我修改了之后上传后结果是报了40多个路径错误,找不到这个找不到那个,看的我是一脸懵。
然后我的解决方案是全局全词匹配到element-ui之后进行全局替换为我设置的包名。
说下上传包步骤,
首先进入element文件夹之后执行:
npm init
然后登陆下(没有账户的注册账户):
npm login
依次根据提示输入username、password、e-mail其他的都可以敲回车完事(记得改element文件夹中package.json文件中的包名和版本号啊)。
需要强调的是包名不能重复,不然npm会给你报一堆乱七八糟的错误。
最后进行上传:
npm publish
ok上传完成(要是报各种看不懂的错误很大可能是包名重复)。
4.到项目中将项目中的package.json中的dependencies中的:"element-ui": "^2.4.11"
修改为:"你的包名": "^你的版本号"
。
然后进行依赖安装:npm install
启动项目,效果OK。
有不对的地方,各位路过的大佬多多指教。