模块化规范目录
1.CommonJS(node基于它编写)
npm init 自动生成package.json文件
高版本的nodejs自动将包名转成了小写
npm install uniq --save
- 添加该依赖到package.json中,在npm版本5以上默认–save
暴露出模块中的方法或者属性
通过node app.js可以运行该文件看到结果(服务器端实现)
引入第三方库
const uniq = require('uniq')//函数调用方法
// 有个小问题,调用uniq函数返回的结果按数字第一位编码进行排序
Browserify模块化使用教程(CommJS的浏览器端打包工具)
- 全局安装
npm installl browserify -g
- 局部安装,–save 运行依赖 --save-dev开发依赖
npm install browserify --save-dev
devDependencies 和 dependencies不一样 一个是开发依赖包,一个是运行依赖包
- 在浏览器端运行时会提示 require is not defined 此时需要browserify来进行打包
// 打包文件路径 输出文件路径 bundle打包的意思
browserify js/src/app.js -o js/dist/bundle.js
最终index页面引入的实际上是打包好的bundle.js文件,用浏览器页面运行
2.AMD (异步加载)
AMD定义暴露模块
- 定义没有依赖的模块
define(function(){