Babel 配置实验报告 发表于 2020-01-07 写在前面的话JavaScript语言的更新,也伴随着 Babel 的成长, 对于一个前端而言,JavaScript 新的 API 自然很香,但代价就是我们要转译它,比较常用工具的就是 Babel 。 ECMA有很多版本,6、7、8、9 ….,前端浏览器也有多种,每种也有着不同的版本,为了实现这多对 ... 阅读全文 »
前端脚手架构建实践 发表于 2019-05-30 前面的话在前端工程化过程中,为了解决多项目中,相似度高的工作,便诞生许多前端脚手架,这里记录下自己实现一个简易前端脚手架过程的实践。主要是解决多个页面相似内容的复制粘贴问题,功能类似于Webstorm的Live template,或者Vscode的Snippets。 思路 预先配置页面模板,预留关键 ... 阅读全文 »
PostCSS原理解析 发表于 2019-01-14 写在前面的话前端工程化日益成熟今天,我们对于工具越来越深的封装。不管是从vue-cli的3.0版本起,还是umi、bigfish 等前端脚手架,对于webpack都封装在内,对于工程化无疑是高效的,但也在一定程度上让新手们者失去了从零配置一个项目的机会,所以很多时候还是希望能透过大神们的框架,研究一 ... 阅读全文 »
前端代码风格自动化系列(五)之共同出击 发表于 2019-01-07 我们在前面的四篇中介绍了husky、commitlint、lint-staged、prettier这些工具,可以完成以最小的代价在Git提交到远程仓库前,格式化为统一风格的代码,eslint大家都很熟悉这里就不列举了。下面举一个配置。 12345678910111213141516171819202 ... 阅读全文 »
前端代码风格自动化系列(四)之Prettier 发表于 2019-01-07 Prettier是一个支持多语言的代码格式工具,如常用的:js、jsx、Vue、Flow、Ts、HTML、CSS等,非常全面,将代码解析为AST,然后重新组装,目的是最终输出风格统一的代码,对比eslint对error的fix要强一些,如最大长度的改动,eslint只是对有问题的地方进行格式化修改, ... 阅读全文 »
前端代码风格自动化系列(三)之Lint-staged 发表于 2019-01-07 在我们介绍了Husky、Commitlint之后,来看一个前端文件过滤的工具Lint-staged,代码的格式化肯定会涉及到文件系统,一般工具会首先读取文件,格式化操作之后,重新写入。对于较大型的项目,文件众多,首先遇到的就是性能问题,虽然如Eslint之类的也有文件过滤配置,但毕竟还是对于匹配文件 ... 阅读全文 »
前端代码风格自动化系列(二)之Commitlint 发表于 2019-01-07 在有了Husky赋能之后,我们有能力在Git的钩子里做一些事情,首先不得不提的是代码的提交规范和规范的校验,优雅的提交,方便团队协作和快速定位问题。首推Commitlint,另外@加神 推荐了Gitmoji也是一个很有意思的工具。 安装1234npm install --save-dev @comm ... 阅读全文 »
前端代码风格自动化系列(一)之Husky 发表于 2019-01-07 代码风格和性格一样,每个程序员都有自己的特点,但对于大家协同开发的项目,还是需要力求代码风格的一致性,以减少Bug,方便互相修改,短时间内能上手,在这条路上诞生了许许多多的工具。本系列主要介绍目前主流的前端代码格式化的工具。 本篇主要介绍代码提交钩子Husky的用法,在代码被提交到Git仓库之前,我 ... 阅读全文 »
说说Loading这件小事 发表于 2018-12-17 不管是从最早的原生JavaScript还是到现在的React、Vue,只要有页面的地方就有loading,似乎loading是一个前端同学永远也绕不过去的坎。之所以说是坎,因为在页面中对于loading的控制,确实让前端工程师比较头疼,但大家似乎对于loading很多时候也不是那么在意,可有可无,也 ... 阅读全文 »
前端自动化测试 发表于 2018-09-04 前言本文主要是介绍基于React+Ant Design(以下用Antd表示Ant Design)的项目,在对于自己封装的,或者基于Antd封装的公共组件的自动化测试技术的选型和实践。 背景当前前端项目越来越大,业务逻辑日益繁杂,协同开发的同事也越来越多,迭代频繁,许多页面有一些相似的功能,会复用一些 ... 阅读全文 »