![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
模块化
文章平均质量分 82
一只勤劳的二哈
If not now, when?If not me, who?
展开
-
webpack一篇就懂(持续更新中)
如何在浏览器端实现模块化文章目录如何在浏览器端实现模块化浏览器端的模块化根本原因解决办法常见的构建工具webpack的安装和使用webpack简介webpack的安装使用模块化兼容性同模块化标准不同模块化标准最佳实践前置知识:ES6、模块化、包管理器、git特点:合适的深度:webpack使用层面很简单,但原理层面非常复杂合适的广度:webpack生态圈极其繁荣,有海量的第三方库可以融入到webpack浏览器端的模块化问题:效率问题:精细的模块划分带来了更多的JS文件,更多的JS文原创 2021-03-27 22:12:35 · 140 阅读 · 0 评论 -
nvm(node版本管理工具)
nvm是用于管理多个node版本的工具在实际的开发中,可能会出现多个项目分别使用的是不同的node版本,在这种场景下,管理不同的node版本就显得尤为重要nvm就是用于切换版本的一个工具下载和安装最新版下载地址:https://github.com/coreybutler/nvm-windows/releases下载nvm-setup.zip后,直接安装使用nvmnvm提供了CLI工具,用于管理node版本在终端中输入nvm,以查看各种可用命令为了加快下载速度,建议设置淘宝镜像nod原创 2021-03-23 23:01:46 · 165 阅读 · 0 评论 -
yarn包管理工具
yarn 简介yarn 官网:https://www.yarnpkg.com/zh-Hans/yarn 是由Facebook、Google、Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具,它仍然使用 npm 的registry,不过提供了全新 CLI 来对包进行管理过去,yarn 的出现极大的抢夺了 npm 的市场,甚至有人戏言,npm 只剩下一个 registry 了。之所以会出现这种情况,是因为在过去,npm 存在下面的问题:依赖目录嵌套层次深:过去,npm 的依原创 2021-03-23 22:51:22 · 1112 阅读 · 0 评论 -
npm包管理器
文章目录包的安装本地安装全局安装包配置配置文件保存依赖关系包的使用语义版本避免还原的差异[扩展]npm的差异版本处理npm 脚本 (npm scripts)运行环境配置在node中读取package.json其他npm命令 {ignore}安装查询更新卸载包npm 配置发布包准备工作发布开源协议包的安装安装(install)即下载包由于 npm 的官方 registry 服务器位于国外,可能受网速影响导致下载缓慢或失败。因此,安装好 npm 之后,需要重新设置 registry 的地址为国内地址。目原创 2021-03-23 22:48:32 · 924 阅读 · 0 评论 -
前端包管理器的概念和背景
文章目录包管理工具概述概念背景前端包管理器包管理工具概述概念模块(module)通常以单个文件形式存在的功能片段,入口文件通常称之为入口模块或主模块库(library,简称lib)以一个或多个模块组成的完整功能块,为开发中某一方面的问题提供完整的解决方案包(package)包含元数据的库,这些元数据包括:名称、描述、git主页、许可证协议、作者、依赖等等背景CommonJS 的出现,使 node 环境下的 JS 代码可以用模块更加细粒度的划分。一个类、一个函数、一个对象、一个配置等等均原创 2021-03-23 22:31:52 · 360 阅读 · 1 评论 -
JavaScript 模块化发展史
JavaScript 模块化发展史文章目录JavaScript 模块化发展史第一阶段第二阶段第三阶段第四阶段第一阶段在 JavaScript 语言刚刚诞生的时候,它仅仅用于实现页面中的一些小效果那个时候,一个页面所用到的 JS 可能只有区区几百行的代码在这种情况下,语言本身所存在的一些缺陷往往被大家有意的忽略,因为程序的规模实在太小,只要开发人员小心谨慎,往往不会造成什么问题在这个阶段,也不存在专业的前端工程师,由于前端要做的事情实在太少,因此这一部分工作往往由后端工程师顺带完成第一阶段发生的原创 2021-03-10 23:02:14 · 184 阅读 · 0 评论 -
ES6模块化
ES6模块化简介ECMA组织参考了众多社区模块化标准,终于在2015年,随着ES6发布了官方的模块化标准,后成为ES6模块化ES6模块化具有以下的特点使用依赖预声明的方式导入模块依赖延迟声明优点:某些时候可以提高效率缺点:无法在一开始确定模块依赖关系(比较模糊)依赖预声明优点:在一开始可以确定模块依赖关系缺点:某些时候效率较低灵活的多种导入导出方式规范的路径表示法:所有路径必须以./或…/开头基本导入导出模块的引入注意:这一部分非模块化标准目前,浏览器使用原创 2021-03-10 22:49:46 · 150 阅读 · 0 评论 -
AMD规范和CMD规范发展史
文章目录浏览器端模块化的难题AMDCMD浏览器端模块化的难题CommonJS的工作原理当使用require(模块路径)导入一个模块时,node会做以下两件事情(不考虑模块缓存):通过模块路径找到本机文件,并读取文件内容将文件中的代码放入到一个函数环境中执行,并将执行后module.exports的值作为require函数的返回结果正是这两个步骤,使得CommonJS在node端可以良好的被支持可以认为,CommonJS是同步的,必须要等到加载完文件并执行完代码后才能继续向后执行当浏览器遇原创 2021-03-09 22:58:17 · 171 阅读 · 0 评论 -
CommonJS规范
CommonJS规范CommonJS模块的导出模块的导入CommonJS规范nodejs对CommonJS的实现CommonJS在nodejs中,由于有且仅有一个入口文件(启动文件),而开发一个应用肯定会涉及到多个文件配合,因此,nodejs对模块化的需求比浏览器端要大的多由于nodejs刚刚发布的时候,前端没有统一的、官方的模块化规范,因此,它选择使用社区提供的CommonJS作为模块化规范在学习CommonJS之前,首先认识两个重要的概念:模块的导出和模块的导入模块的导出要理解模块的导出,原创 2021-03-08 22:37:42 · 475 阅读 · 0 评论