element3开发感受

132 阅读2分钟

加入element3开发维护也有一段时间了,学了点vue3就直接开始开发了,作为一个只要有网什么都可以实现的web开发者,也遇到了一些问题,下面就简单聊下以下几点。

  • 开发element组件跟日常开发有什么区别
  • 什么是TDD
  • 遇到不会的地方怎么处理
  • 开发完有什么收货
  • 怎么一起来开发

开发element组件跟日常开发有什么区别 自己项目的组件库只要能用就行了,但是开发这种开源的首先要满足很多要求,比如element每个足见下面都有一些用法,涉及到的参数得支持,用户会在各种场景用到,设计的时候需要满足多场景,自己设计的时候就得考虑全面。还有就是团队协作,十几个人开发一个项目,每个人负责不同的模块,代码提交规范特别重要,之前提交的时候一般都很随意,git add .,git commit -m 'xxx',现在这么写就被喷了,commit 的内容有自己的格式,比如 feat是开发了新功能,fix表示是修改了bug

const commitRE = /^(revert: )?(feat|fix|docs|dx|style|refactor|perf|test|workflow|build|ci|chore|types|wip|release)(\(.+\))?(.{1,10})?: .{1,50}/

怎么保证我们写的组件满足element2原有的功能呢,那就得用到TDD了

什么是TDD TDD 测试驱动开发,我们要开发一个功能,首先我们得很清楚我们用它来做什么,都需要满足什么场景,看一段TDD代码

   it('core style contain border-color equal to #ff0000 when set activeColor', () => {
    const wrapper = mount(Switch, {
      props: {
        modelValue: true,
        activeColor: '#ff0000'
      }
    })

    expect(wrapper.find('.el-switch__core').attributes('style')).toContain(
      'border-color: #ff0000'
    )
  })

这个是switch组件里面的一段测试代码,路径在组件的src同级的tests目录,it后面是个描述语,执行校验的时候会打印出这句话,当switch组件具备modelValue的时候,我们把activeColor设置为ff0000,期望组件下有el-switch__core类名的具备边框颜色是#ff0000。

遇到不会的地方怎么处理 谷歌,可以搜到国外开发者在git上的一些答案,对于新技术谷歌比较全,还可以学英语,当然,百度也可以。但是要是加入我们,就可以在群里讨论了 开发完有什么收货 首先,可以出去吹牛,其次这是我做的第一个vue3的项目,之前有学过但是从来没手敲过,实操后才算真的懂了一点,最近学习有点懒散,后续还要继续努力,也希望有更多的想学习的小伙伴加入进来,一起进步 如何来一起来开发 然叔的这边文章写的很好 跟我一起编写Vue3版ElementUI