Element3开发

158 阅读3分钟

what

element3是基于饿了么团队开发的element

我们都做哪些工作

  1. Options api全面改造为Composition api
  2. 优化了目录结构
  3. 重构组件

开发element3中的收获

element组件库的了解

阅读element组件库,结合自己以往对Vue语法的了解,了解了组件的原理,对组件对编写有了更深入的认识; 学习了一个组件库需要哪些部分(eg: 源码包、md-loader、website)组成才能让用户使用的更加舒心

Composition api语法的熟悉

从options api到composition api语法需要一个转变到过程,一如我初入前端开发从jQuery时代转换成Vue时经历相似; 当我使用compostion api时,没有办法使用this、变量会莫名奇妙到失去响应式的特性等等,各种困扰我的问题,一遍遍尝试,最终豁然开朗

PR流程熟悉

  1. Fork代码: 首先通过github到fork功能将代码复制到自己到gibhub

  2. clone到本地: git clone github.com/xiyifenhear…

  3. 开发前同步官方最新代码: fork代码后,如果官方代码有更新,需要手动同步。这个过程应该是每天都要做的事情

    3.1 添加新远程分支:这个只需要做一次 git remote add upstream github.com/kkbjs/eleme… 修改后可以看到远程分支多了 upstream

    3.2拉取远程分支,合并到master分支 这一步最少保持一天一次,保证你master代码与官方最新代码一致

    git fetch upstream master
    // 切到master分支
    git checkout master
    // 合并远程分支
    git merge upstream/master
    
  4. 开发

切分支进行开发 git checkout -b tooltip

  1. 提交commit 官方commit一般都有格式要求,要按要求提交,不然会被拒绝 git commit -am 'refactor: refactor tooltip'

  2. 提PR

在官方库的pull requests里面可以找到自己提交的PR

如果有对应的issue记得关联上

  1. 最后最坐等好消息啦

TDD(测试驱动开发)开发模式

首先TDD有个准备阶段:

我们叫他Tasking, 如下所示

用TDD编写代码有以下3个阶段:

(1)不可运行——写一个不能工作的测试用例,一开始这个测试用例肯定是会失败的

(2)可运行——尽快让这个测试用例能够通过,即使只是写一个占位的值

(3)重构——尽量消除在让测试用例通过时产生的重复设计,优化设计机构

在TDD的开发模式下,保证了我们重构的功能会与原来保持一致,同时在重构过程中赋予我们重构的勇气(有了测试用例的保证); 养成了先思考后coding的习惯

加入我们

加入element3开发团队的过程中,成长了很多,也有了更开阔的视野。

所以希望能有过多的小伙伴加入我们 github.com/hug-sun/ele…