如果一个 npm 包依赖另一个 npm 包,而依赖的这个包因为很常用,很可能被其它地方依赖,那么正确的引用姿势是什么?

直接引用(npm install --save-dev)有可能导致版本冲突,这是 npm 模块管理机制本身决定的。想象一下,一个基于 vue 的通用组件库,能够直接引入特定版本的 vue 吗?

正确的姿势是使用 peer-dependency,或者不要引用,而是由上层引用后将其作为参数传进来。

也就是说,如果你打算开发一个 npm 包,那么你是不可以随便引其它包的。
展开
评论