Skip to main content

2 posts tagged with "node"

View All Tags

node_modules, the Heaviest Object in the Universe

相信大家在开发中都遇到过这样的问题:同一个项目,在本地开发环境没问题,到线上环境却有问题?那很可能是包管理出了问题。

前端的项目依赖主要是通过 package.json 和 node_modules 管理,常见的包管理工具有 npm, yarn。

通常来说:npm 包 = 结构化模块 + 描述文件(package.json)

需要注意的是:一个 module 不一定是一个 package,一个 package 也不一定是一个 module,package 可以是一个 tar 包,也可以是本地 file 协议,甚至是 git 仓库地址。

在下文中,node_modules 的包管理主要分两个阶段说明:早期的 npm V2 阶段、 npm V3 及以后阶段。