
- RequireJS 教程
- RequireJS - 首頁
- RequireJS - 概述
- RequireJS - 環境設定
- RequireJS - 配置
- RequireJS - AMD 模組
- RequireJS - 定義函式
- RequireJS - 最佳化器
- RequireJS - jQuery
- RequireJS - NodeJS
- RequireJS - Dojo
- RequireJS - CommonJS
- RequireJS - 外掛
- RequireJS 有用資源
- RequireJS - 快速指南
- RequireJS - 有用資源
- RequireJS - 討論
RequireJS - AMD 模組
RequireJS 中的模組是一個作用域物件,不在全域性名稱空間中使用。因此,全域性名稱空間不會受到汙染。RequireJS 語法允許更快地載入模組,而無需擔心跟蹤依賴項的順序。您可以在同一頁面中載入同一模組的多個版本。
定義模組
使用 define() 函式定義模組;該函式還用於載入模組。
簡單的名稱/值對
如果模組只是一組名稱和值對,則可以使用以下語法 -
define({ state: "karnataka", city: "bangalore" });
定義函式
模組還可以對框架使用函式,而不具有依賴關係。這可以透過使用以下語法來完成 -
define(function () { //Do setup work here return { state: "karnataka", city: "bangalore" } });
定義具有依賴項的函式
如果模組具有依賴項,則以下語法中顯示了第一個引數(依賴項名稱陣列)、第二個引數(定義函式)和定義模組的返回物件的位置 -
define(["./mnc", "./startup"], function(mnc, startup) { return { state: "karnataka", city: "bangalore", addCompany: function() { mnc.decrement(this); startup.add(this); } } } );
將模組定義為函式
模組不強制要求僅返回物件,還可以返回來自函式的任何有效值。以下語法用於將模組定義為函式 -
define(["./mnc", "./startup"], function(mnc, startup) { return function(title) { return title ? (window.title = title) : startup.storeName + ' ' + mnc.name; } } );
使用名稱定義模組
在某些情況下,您可能必須將名稱作為第一個引數包含到define() 中,以獲得模組。這可以透過使用以下語法來完成 -
define("js2/title", ["js1/mnc", "js1/startup"], function(mnc, startup) { //Define js2/title object in here. } );
廣告