seajs 使用文檔

// seajs 的簡單配置
seajs.config({
    base: "/scripts/",
    alias: {
        "jquery": "jquery.js"
    }
})

//狀況1、若是定義和調用在同一個文件
//實例一:define、use
//必須聲明模板標識
define("user", function () {
    alert("用戶信息");
});
// 加載入口模塊
seajs.use("user")

//實例二:require,require 的參數值 必須 是字符串直接量。
define("sex", ["男", "女"]);
define("user", function (require) {
    // 經過require 引入依賴
    var sex = $ = require('sex');
    alert(sex[0]);
});
// 加載入口模塊
seajs.use("user")

//實例三:exports
define("account", function (require, exports) {
    // 經過 exports 對外提供接口
    exports.profile = {
        name: "姓名",
        sex: "男"
    }
    exports.islogin = function () {
        return true;
    }
});
define("user", function (require) {
    // 經過require 引入依賴
    var account = $ = require('account');
    //加載exports接口
    alert(account.profile.name);
    alert(account.islogin());
});
// 加載入口模塊
seajs.use("user")

//實例三:module.exports
define("account", function (require, exports, module) {
    function account() { }
    account.prototype.name = "姓名";
    // 或者經過 module.exports 提供整個接口
    module.exports = account;
});
define("user", function (require, exports, module) {
    // 經過require 引入依賴
    var account = $ = require('account');
    //加載module.exports接口
    var ac = new account();
    alert(ac.name);
});
// 加載入口模塊
seajs.use("user")

//實例四:插件開發:seajs.on(event, callback)
// 給 account 事件添加一個回調
seajs.on('account', function (data) {
    alert("插件開發指南");
});
// 加載入口模塊
seajs.emit('account', {});

事件類型
內部提供了 8 種事件
resolve       -- 將 id 解析成爲 uri 時觸發
load          -- 開始加載文件時觸發
fetch         -- 具體獲取某個 uri 時觸發
request       -- 發送請求時觸發
define         -- 執行 define 方法時觸發
exec         -- 執行 module.factory 時觸發
config         -- 調用 seajs.config 時觸發
error          -- 加載腳本文件出現 404 或其餘錯誤時觸發

自定義事件
seajs.on(event, callback)
移除事件回調
seajs.off seajs.off(event, callback)
seajs.off(event);
seajs.off();
觸發事件
seajs.emit seajs.emit(event, data)

jquery

相關文章
相關標籤/搜索