首页 专题 H5案例 前端导航 UI框架

Sea.js常用API参考

作者:TG 日期: 2016-07-09 字数: 4666 阅读: 3603
seajs.config
用来对Sea.js进行配置。

seajs.config({

  //设置路径,方便跨目录调用

  paths:{

    'jquery':'/scripts/jquery',

    'plugin':'plugin'

  },

  //设置别名,方便调用

  alias:{

    'jquery':'jquery/1.10.1/jquery',  //jquery/1.10.1/jquery相当于/scripts/jquery/1.10.1/jquery.js

    'bootstrap':'plugin/bootstrap'

  }

});

更多配置:https://github.com/seajs/seajs/issues/262

seajs.use

用来在页面中记载一个或多个模块。

//加载一个模块

seajs.use('./a');   


//加载一个模块,在加载完成时,执行回调

seajs.use('./a',function(a){

  a.doSomething();

});


//加载多个模块,在加载完成时,执行回调

seajs.use(['./a','./b'],function(a,b){

  a.doSomething();

  b.doSomething();

});

更多用法:https://github.com/seajs/seajs/issues/260


define

用来定义模块。Sea.js推荐一个模块一个文件,遵循统一写法:

define(function(require,exports,module){

  //模块代码

});

更多:https://github.com/seajs/seajs/issues/242


require

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

define(function(require){

  //获取模块a的接口

  var a=require('./a');

  //调用模块a的方法

  a.doSomething();

})

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

更多:https://github.com/seajs/seajs/issues/259


require.async

用来在模块内部异步加载一个或多个模块

define(function(require){

  //异步加载一个模块,在加载完成时,执行回调

  require.async('./b',function(b){

    b.doSomething();

  });

  //异步加载多个模块,在加载完成时,执行回调

  require.async(['./c','./d'],function(c,d){

    c.doSomething();

    d.doSomething();

  });

});

详细:https://github.com/seajs/seajs/issues/242


exports

用来在模块内部对外提供接口

define(function(require,exports){

  //对外提供foo属性

  exports.foo=bar;

  //对外提供doSomething方法

  exports.doSomething=function(){};

})

详细:https://github.com/seajs/seajs/issues/242


module.exports

与exports类似,用来在模块内部对外提供接口

define(function(require,exports,module){

  //对外提供接口

  module.exports={

    name:'a',

    doSomething:function(){}

  };

})

详细:https://github.com/seajs/seajs/issues/242



目录