一、复习Nodejs
ECMAScript语法
没有DOM和DOM
核心模块
fs文件操作模块
http服务模块
url路径操作模块
path路径操作模块
第三方模块
art-template `必须使用npm下载才能使用`
自定义模块
二、模块化开发
使用Commonjs模块规范
1、文件作用域
2、加载 require
2.1运行导入的文锦啊
2.2得到导入文件里面导出里面的成员
3、导出
文件默认有两个变量
module= {
exports:{}
}
exports=module.exports
require 只能得到module.exports
三、模块化的缓存
此时main.js里的require(’./bb’)就没有执行了,因为在main.js里面先require(’./aa’)然后aa.js页面执行了require(’./bb’)此时bb.js 已经在缓存中,这时候main.js里的require(’./bb’)就没有执行了。
四、require加载规则
1、自定义模块
通过路径导入例:require('./aa')
2、核心模块
本质上也是文件,只是已经编译进二进制模块,我们之遥按照名字加载就可以
3、第三方模块
3.1、凡是第三方模块,都需要通过npm下载
3.2、使用的时候通过require(包名)加载
3.3、不可能出现第三方模块和核心模块名字一样的模块
先找当前目录中node_modules文件夹
如果找到node_modules/art-template
如果找到node_modules/art-template/package.json 文件
如果找到node_modules/art-template/package.json 文件/main属性
mian属性就是模块的入口,最终加载的还是文件
五、npm常用命令
npm init
创建包说明文件package.json
npm install
下载package.json 配置的依赖包
npm install 包名 --save
下载对象的依赖包,配置在package.json的运行时依赖。
npm install 包名 --save-dev
下载对应的依赖包,配置在package.json的开发时依赖
npm uninstall 包名
删除对应的包,删除package.json文件里面对应的配置信息。