前端项目脚手架做了什么?
在前端开发的初始阶段,开发者通常只需要关注 HTML, CSS, JavaScript,但是现代化的前端开发已经不仅仅是业务代码本身,涉及方方面面,从流程上来说可以划分为:开发需求、部署需求、线上运维(质量+体验)需求。
为了使得前端构建更加标准化、工具化、自动化,出现了很多工具来提高前端开发的效率、质量和体验,统称为前端工程化。
在前端开发的初始阶段,开发者通常只需要关注 HTML, CSS, JavaScript,但是现代化的前端开发已经不仅仅是业务代码本身,涉及方方面面,从流程上来说可以划分为:开发需求、部署需求、线上运维(质量+体验)需求。
为了使得前端构建更加标准化、工具化、自动化,出现了很多工具来提高前端开发的效率、质量和体验,统称为前端工程化。
相信大家在开发中都遇到过这样的问题:同一个项目,在本地开发环境没问题,到线上环境却有问题?那很可能是包管理出了问题。
前端的项目依赖主要是通过 package.json 和 node_modules 管理,常见的包管理工具有 npm, yarn。
通常来说:npm 包 = 结构化模块 + 描述文件(package.json)
需要注意的是:一个 module 不一定是一个 package,一个 package 也不一定是一个 module,package 可以是一个 tar 包,也可以是本地 file 协议,甚至是 git 仓库地址。
在下文中,node_modules 的包管理主要分两个阶段说明:早期的 npm V2 阶段、 npm V3 及以后阶段。