AMD_CMD_RequireJS

2017-08-20  本文已影响0人  山门龙龙

1.为什么要使用模块化?

2.CMD、AMD、CommonJS 规范分别指什么?有哪些应用

//这是test1.js文件
var people = {
    name: 'jinlong',
    sayName: function () {
        console.log(this.name);
    }
}
module.exports = people;
//这是test2.js文件
var p = require('./test1');
p.sayName();

在终端中打开test2.js文件,输出sayName的返回值,如图所示:

高阶4.png
    /*
    require([module], callback);
     */

    require('test1', function(test1){
        test1.sayName();
    })

test1和 sayName不是同步的,所以浏览器不会假死,AMD适合浏览器环境。AMD一般使用require.js来提供模块化的功能。

define(factory);

示例:

//math.js
define(function(require, exports, module) {
  exports.add = function() {
    var sum = 0, i = 0, args = arguments, l = args.length;
    while (i < l) {
      sum += args[i++];   
  }
    return sum;
  };
});

//increment.js
define(function(require, exports, module) {
  var add = require('math').add;
  exports.increment = function(val) {
    return add(val, 1);
  };
});

//program.js
define(function(require, exports, module) {
  var inc = require('increment').increment;
  var a = 1;
  inc(a); // 2
  module.id == "program";
});

3.使用 requirejs 完善入门任务15,包括如下功能:

  1. 首屏大图为全屏轮播
  2. 有回到顶部功能
  3. 图片区使用瀑布流布局(图片高度不一),下部有加载更多按钮,点击加载更多会加载更多数据(数据在后端 mock)
  4. 使用 r.js 打包应用
    github地址链接
上一篇 下一篇

猜你喜欢

热点阅读