Inoffizielle Dokumente werden aus dem Text und Beispielen unserer eigenen offiziellen Dokumente zum schnellen Nachschlagen zusammengestellt.
Warum Sea.js verwenden?
Sea.js verfolgt eine einfache und natürliche Art, Code zu schreiben und zu organisieren und verfügt über die folgenden Kernfunktionen:
Einfache und benutzerfreundliche Moduldefinitionsspezifikation: Sea.js folgt der CMD-Spezifikation und kann Modulcode wie Node.js schreiben.
Natürliche und intuitive Code-Organisation: Das automatische Laden von Abhängigkeiten und die prägnante und klare Konfiguration ermöglichen uns mehr Freude am Programmieren.
Sea.js bietet außerdem häufig verwendete Plug-Ins, die für die Entwicklung, das Debuggen und die Leistungsoptimierung sehr hilfreich sind und über umfangreiche erweiterbare Schnittstellen verfügen.
Kompatibilität
Sea.js verfügt über vollständige Testfälle und ist mit allen gängigen Browsern kompatibel:
Chrome 3+
Firefox 2+
Safari 3.2+
Opera 10+
IE 5.5+
Sea.js kann auf der mobilen Seite ausgeführt werden, einschließlich Apps im Hybridmodus. Theoretisch kann Sea.js auf jeder Browser-Engine ausgeführt werden.
seajs.configObject
Alias Objekt
Alias-Konfiguration. Nach der Konfiguration können Sie require im Modul verwenden, um require('jquery'); aufzurufen.
seajs.config({ alias: { 'jquery': 'jquery/jquery/1.10.1/jquery' } });
define(function(require, exports, module) { //引用jQuery模块 var $ = require('jquery'); });
Pfade Objekt
Legen Sie den Pfad fest, um verzeichnisübergreifende Anrufe zu erleichtern. Durch die flexible Festlegung des Pfades können Sie ein Verzeichnis angeben, ohne dass dies Auswirkungen auf die Basis hat.
seajs.config({ //设置路径 paths: { 'gallery': 'https://a.alipayobjects.com/gallery' }, // 设置别名,方便调用 alias: { 'underscore': 'gallery/underscore' } });
define(function(require, exports, module) { var _ = require('underscore'); //=> 加载的是 https://a.alipayobjects.com/gallery/underscore.js });
varsObjekt
Variable Konfiguration. In einigen Szenarien kann der Modulpfad nur zur Laufzeit ermittelt werden. In diesem Fall können Sie ihn mithilfe von Vars-Variablen konfigurieren.
vars konfiguriert den Variablenwert im Modulbezeichner und {key} wird verwendet, um die Variable im Modulbezeichner darzustellen.
seajs.config({ // 变量配置 vars: { 'locale': 'zh-cn' } });
define(function(require, exports, module) { var lang = require('./i18n/{locale}.js'); //=> 加载的是 path/to/i18n/zh-cn.js });
KarteArray
Diese Konfiguration kann den Modulpfad zuordnen und ändern und kann für die Pfadkonvertierung, Online-Debugging usw. verwendet werden.
seajs.config({ map: [ [ '.js', '-debug.js' ] ] });
define(function(require, exports, module) { var a = require('./a'); //=> 加载的是 path/to/a-debug.js });
VorladenArray
Mit dem Preload-Konfigurationselement können Sie das angegebene Modul im Voraus laden und initialisieren, bevor Sie das normale Modul laden.
Leere Zeichenfolgen im Preload werden ignoriert.
// 在老浏览器中,提前加载好 ES5 和 json 模块 seajs.config({ preload: [ Function.prototype.bind ? '' : 'es5-safe', this.JSON ? '' : 'json' ] });
Hinweis: Die Konfiguration im Preload muss vor dem Laden auf die Verwendung warten. Zum Beispiel:
seajs.config({ preload: 'a' }); // 在加载 b 之前,会确保模块 a 已经加载并执行好 seajs.use('./b');
Preload-Konfiguration kann nicht in Moduldateien platziert werden:
seajs.config({ preload: 'a' }); define(function(require, exports) { // 此处执行时,不能保证模块 a 已经加载并执行好 });
DebugBoolean
Wenn der Wert wahr ist, entfernt der Loader keine dynamisch eingefügten Skript-Tags. Plug-Ins können auch über die Ausgabe von Protokollen und anderen Informationen basierend auf der Debug-Konfiguration entscheiden.
BasisString
Wenn Sea.js die Kennung der obersten Ebene analysiert, wird sie relativ zum Basispfad analysiert.
Hinweis: Bitte konfigurieren Sie den Basispfad im Allgemeinen nicht. Oft ist es einfacher und konsistenter, sea.js im entsprechenden Pfad zu platzieren.
charsetString |. Funktion
Beim Abrufen der Moduldatei wird das Zeichensatzattribut des