Heim > Artikel > Web-Frontend > Ausführliche Erläuterung der Spezifikationen und Schreibformate der drei Module AMD, CMD und UMD
Die folgenden drei Abschnitte verwenden alle foo.js als Beispieldateinamen, jQuery und Unterstrich als erforderliche Komponenten
ADM: Asynchrone Modulspezifikation, von RequireJs unterstützte Formate
// 文件名: foo.js define(['jquery', 'underscore'], function ($, _) { // 方法 function a(){}; // 私有方法,因为没有被返回(见下面) function b(){}; // 公共方法,因为被返回了 function c(){}; // 公共方法,因为被返回了 // 暴露公共方法 return { b: b, c: c } });
CommonJs : Vom Knoten unterstützte Formate
// 文件名: foo.js var $ = require('jquery'); var _ = require('underscore'); // methods function a(){}; // 私有方法,因为它没在module.exports中 (见下面) function b(){}; // 公共方法,因为它在module.exports中定义了 function c(){}; // 公共方法,因为它在module.exports中定义了 // 暴露公共方法 module.exports = { b: b, c: c };
UMD: Universalmodus, unterstützt die beiden oben genannten Formate und kann die alte Spezifikation „Globale Variable“ unterstützen
(function (root, factory) { if (typeof define === 'function' && define.amd) { // AMD define(['jquery', 'underscore'], factory); } else if (typeof exports === 'object') { // Node, CommonJS之类的 module.exports = factory(require('jquery'), require('underscore')); } else { // 浏览器全局变量(root 即 window) root.returnExports = factory(root.jQuery, root._); } }(this, function ($, _) { // 方法 function a(){}; // 私有方法,因为它没被返回 (见下面) function b(){}; // 公共方法,因为被返回了 function c(){}; // 公共方法,因为被返回了 // 暴露公共方法 return { b: b, c: c } }));
Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Spezifikationen und Schreibformate der drei Module AMD, CMD und UMD. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!