AMD、CMD、common.js
三者都是都是模块化工具,可以将一个特定功能封装起来,便于随时调用,实现代码量减少,避免全局污染等功能,对于前段开发很方便。
模块化也叫做***具有特定功能的对象***,所以这样就更好的方便我们理解模块化,就像封装函数一样,讲某个功能的函数封装起来,便于多次调用,而模块化也是如此,在开发中需要某个功能,直接引入该模块即可,
模块定义的流程
定义模块(即需要实现什么功能就怎么定义)
导出模块
引用模块
定义模块
AMD定义模块:define
define({
a:1,
b:2,
add:function(){}
})
CMD定义模块:define
define(function(require,exports,module){
})
common.js的三种模块
-
内置模块
挂载在node.js全局对象身上的api
内置模块可以直接使用
-
第三方模块
别人封装好的模块
这些模块具有一些特定的功能
存放在www.npmjs.com中
使用第三方模块 1、使用npm/cnpm安装模块 2、在文件中引入模块 3、在www.npmjs.com网站中找到使用方法
3.自定义模块
创建模块
例:const student = {
name:'zhangsan',
age:20
}
导出模块
module.exports = {student}
使用花括号{}导出模块的好处
1、可以批量导出模块,按需引用
引用模块
const {student} = require('./student.js')
上传自定义模块至npmjs.com网站
1、在文件夹下打开终端,输入npm init -y,创建package.json文件;
2、确定电脑源是否为npm,在当前终端输入nrm ls,检查源,不是npm则切换至npm,命令为nrm use npm;
3、输入npm addduser,回车,依次输入username,password,email,登录npmjs网站;
4、显示登录成功,输入npm publish,将文件上传至npmjs网站
可能出现的问题:
1、包名称冲突,换个文件名试试
2、邮箱没有激活 ( 最多的 )
3、npm源没有切换
4、整个电脑的npm就不能使用