浅谈前端模块化及自定义模块

js模块化提供了三种规范

  1、commonjs规范,代表就是node.js   它是运行在服务器端的,适合后台开发,它不适合前端,因为前端的客户端是浏览器,浏览器追求异步加载,等待时间不能太长,如果非要运行在浏览器,则需要借助打包工具进行打包,解析

   2、前端模块化的规范是AMD规范,全程叫async module defintion  异步模块加载机制

  3、第三个模块化规范是es6

简单说下commonjs吧

  comminjs是node的规范,但他是同步加载的,同步加载在浏览器是有弊端的,只要一个环节卡住了,后面的就没法执行。

  模块化都是两个方向:

    1是暴露模块 module.exports={}   本质就是暴露的是一个exports对象

    2引入模块  require

  上面说过,它是后台的规范,是运行在服务器端的。

 

自定义模块:

  什么是自定义模块,顾名思义,就是自己自己写的模块,不依赖任何规范。

 下面我举个例子

浅谈前端模块化及自定义模块_第1张图片

 

浅谈前端模块化及自定义模块_第2张图片

浅谈前端模块化及自定义模块_第3张图片

 AMD规范的模块化:

  浅谈前端模块化及自定义模块_第4张图片

浅谈前端模块化及自定义模块_第5张图片

require()函数接受两个参数:
——第一个参数是一个数组,表示所依赖的模块;
——第二个参数是一个回调函数,当前面指定的模块都加载成功后,它将被调用。加载的模块会以参数形式传入该函数,从而在回调函数内部就可以使用这些模块

 

你可能感兴趣的:(浅谈前端模块化及自定义模块)