前言
-
本文参加了由公众号@若川视野 发起的每周源码共读活动,点击了解详情一起参与。
-
这是源码共读的第36期,链接:juejin.cn/post/711878… 。
阅读方式
从整体到局部,从入口到内部
想要学习的知识点
- 学习代码的实现思路
- npm的发布流程
- 如何单元测试
源码阅读
- 这个库是什么?
- 这个库是针对对象使用,删除某些属性之后返回浅拷贝对象
- 使用场景?
- 针对对象做删除属性操作
- 返回删除属性后的对象
- 代码结构重要部分
- src:逻辑的实现过程
- test: 单元测试,验证代码质量
- index.js: 对外抛出使用方法
- package.json 项目依赖及相关信息
- 代码的实现过程 Object.assign + delete key
- father
- 打包工具
- 用来打包输出编译后针对不同规范的js
- 也用来做单元测试执行
发布包的流程
- 有个npm账号(没有的去npmjs.com官网去注册)
- 通过命令登录npm: npm login
- 输入 username、password、email、以及邮箱的otp
- 编写包 npm init
- 发布包 npm publish
- 发包的时候package.json中name不能为驼峰命名,最好为-连接的方式,如 modify-obj-key
- 删除发布过的包
- npm unpublish packageName --force
- packageName:发布的包名
效果检测(输出物)
- 实现一个修改已有对象的key的方法
- 发布到npm
- 做单元测试
总结
- 学会了npm包的编写和发布
- 第一次完整的看完一个源码分析,希望以后都能坚持下去
- 以目标为导向的学习,效果会更好点
不足
- 对father不太了解
参考链接
npm包发布流程:juejin.cn/post/702879…