NPM酷库,每天两分钟,了解一个流行NPM库。
Node.js 高效率编程的基础是大量的NPM开源库,开发应用时,找特定领域的NPM库要比自己从头写代码要高效得多。如果某个领域没有对应的公共NPM库,那么我们可以自己编写一个NPM库,并发布到NPM仓库,供大家和自己日后使用。这才是Node.js正确的编码姿势。
如果我们发布了NPM库供大家使用,那么,我们的NPM库的接口就不能随便变化,以免给其他的使用者带来麻烦。如果某些接口不得不调整,最好提前几个版本告诉大家某些接口要弃用,以给其他使用者一些整改的时间。
最好的通知方式,就是在你的代码执行时,如果某些将要废弃的接口被调用,那就在控制台中输出警告日志,这样,依赖你的库的其他开发者就能关注到你的通知。
但是要注意,只在接口第一次被调用的时候发出通知,否则,很有可能给项目的控制台带来灾难,因为你的底层库提供的接口会被多次调用。我们可以增加哨兵变量来控制一个废弃接口只输出一次警告。但是,随着你的公共库的规模变大,有可能会有很多接口弃用警告,那么就会到处充斥着和主体逻辑无关的哨兵变量和判断。有没有优雅的方式呢?
depd
今天我们了解的depd库就是专门来控制输出弃用功能警告日志的。
最简用法
我们可以在任何地方使用 输出我们的日志,同样的日志只会输出一次,因为 depd 已经内置了哨兵变量的管理。
声明弃用函数
使用 包裹一层我们要废弃的函数,那么这个函数在被第一次调用时,就会自动输出警告信息。
声明弃用属性
使用 声明对象指定的属性被弃用。
查考资料
https://github.com/dougwilson/nodejs-depd