2020年
NPM组件搭建
之前已经写过相关NPM的文章,这次算是补齐了一个系列的了。
这个系列的顺序:NPM组件搭建(本篇) ---> 本地开发调试NPM包 ---> 在NPM上发布组件教程 ---> GitHub Action终章之发布NPM
本地开发调试NPM包
新开发或修改的 NPM 模块,如何在项目中试验?最近在做小工具,这个问题摆在面前!但其实 npm 本身已经对此类情况提供了专门的 npm link
指令。
TypeScript笔记
最近写的函数库,使用了TS,整理下笔记。
使用coveralls为开源项目生成测试覆盖率图标
Rollup的一些碎碎念
最近搞的一个函数小工具,是用Rollup进行打包编译的,所以在这里简单的总结一下。
js数字转字符串后科学计数问题
起因还是由于封装的函数库里面有一个精度计算的问题,代码如下:
const addExact(arg1, arg2) => {
let r1, r2, m;
try {
r1 = arg1.toString().split('.')[1].length;
} catch (e) {
r1 = 0;
}
try {
r2 = arg2.toString().split(".")[1].length;
} catch (e) {
r2 = 0;
}
m = Math.pow(10, Math.max(r1, r2));
return Math.round(arg1 * m + arg2 * m) / m;
};
搞了个小玩具
消失了快2个月了,博客也没有更新了,一直想写点东西,但是无奈时间不够,天天加班……
加班干嘛呢,搞了两个前端的小玩具,一个是前端可视化平台,另外一个是前端工具函数库:
第一个暂时没有开源,里面用的是我们封装的饿了么组件,后期会封装业务之类。
第二个工具函数库已经开源了,使用TS + Rollup + Jest,但是现在还没有经过大规模验证,还在起步期间,可以来做小白鼠,质量这块专门弄了Jest
做单元测试,尽量保证质量,后续我会把一些开发中遇到的问题和总结发出来。
Jest单元测试的几个指标:stmts
是语句覆盖率(statement coverage
):是不是每个语句都执行了?Branch
分支覆盖率(branch coverage
):是不是每个if代码块都执行了?Funcs
函数覆盖率(function coverage
):是不是每个函数都调用了?Lines
行覆盖率(line coverage
):是不是每一行都执行了?
目前来看,整体测试覆盖度98%,哈哈。
至于第一个,先挖一个坑,我会在博客的后续文章中,把一些思路和方法总结归纳一下,大家可以共同探讨,然后做出一个通用性较好的东西来开源。
GitHub Action自动打包Electron APP
最近消失了一个月,忙公司的一个比较好玩的项目,所以博客断更了一个月。为了证明我是真的在忙,截一个图:
这个项目,后期要上Electron,所以就研究了下自动打包,这次就分享下自动打包的,如果对Action不明白的,可以看我之前的文章,我就不在详细的说了。
.sync 修饰符
在有些情况下,我们可能需要对一个 prop
进行“双向绑定”。不幸的是,真正的双向绑定会带来维护上的问题,因为子组件可以变更父组件,且在父组件和子组件都没有明显的变更来源。
今天扒拉官方文档,发现.sync
这块还是理解的不是太好,于是写一个demo,做一下记录。