• Sea.js学习2——Sea.js的API 快速参考


    (7 个接口是最常用的)

    一、seajs.config:用来对 Sea.js 进行配置。

    seajs.config({
    
      // 设置路径,方便跨目录调用
      paths: {
        'arale': 'https://a.alipayobjects.com/arale',
        'jquery': 'https://a.alipayobjects.com/jquery'
      },
    
      // 设置别名,方便调用
      alias: {
        'class': 'arale/class/1.0.0/class',
        'jquery': 'jquery/jquery/1.10.1/jquery'
      }
    
    });

    二、seajs.use:用来在页面中加载一个或多个模块。

    // 加载一个模块
    seajs.use('./a');
    
    // 加载一个模块,在加载完成时,执行回调
    seajs.use('./a', function(a) {
      a.doSomething();
    });
    
    // 加载多个模块,在加载完成时,执行回调
    seajs.use(['./a', './b'], function(a, b) {
      a.doSomething();
      b.doSomething();
    });

    三、define:用来定义模块。Sea.js 推崇一个模块一个文件,遵循统一的写法:

    define(function(require, exports, module) {
    
      // 模块代码
    
    });

    也可以手动指定模块 id 和依赖。
    require, exports 和 module 三个参数可酌情省略,具体用法如下:

    1)require:require 用来获取指定模块的接口。

    define(function(require) {
    
      // 获取模块 a 的接口
      var a = require('./a');
    
      // 调用模块 a 的方法
      a.doSomething();
    });

    注意,require 只接受字符串直接量作为参数,

    2)require.async:用来在模块内部异步加载一个或多个模块。

    define(function(require) {
    
      // 异步加载一个模块,在加载完成时,执行回调
      require.async('./b', function(b) {
        b.doSomething();
      });
    
      // 异步加载多个模块,在加载完成时,执行回调
      require.async(['./c', './d'], function(c, d) {
        c.doSomething();
        d.doSomething();
      });
    
    });

    3)exports:用来在模块内部对外提供接口。

    define(function(require, exports) {
    
      // 对外提供 foo 属性
      exports.foo = 'bar';
    
      // 对外提供 doSomething 方法
      exports.doSomething = function() {};
    
    });

    4)module.exports:与 exports 类似,用来在模块内部对外提供接口。

    define(function(require, exports, module) {
    
      // 对外提供接口
      module.exports = {
        name: 'a',
        doSomething: function() {};
      };
    
    });

    module.exports 与 exports 的区别

  • 相关阅读:
    我所遭遇过的游戏中间件---HumanIK
    我所遭遇过的游戏中间件--Kynapse
    3D屏保:排色榜
    3维DEMO: 抽奖圆盘
    MySQL存储过程中的3种循环
    MyISAM与InnoDB两者之间区别与选择,详细总结,性能对比
    如何执行字符串的PHP代码
    PHP 注册错误和异常处理机制
    Mysql表中唯一编号的分配机制
    装系统w7、ubuntu、centos等系统(一)
  • 原文地址:https://www.cnblogs.com/shenxiaolin/p/6075935.html
Copyright © 2020-2023  润新知