寫好jQuery插件,有一些注意的地方(持續添加)。
支持UMD
現在前端開發講究模塊化,所以jQuery插件也最好能夠兼顧模塊化。
模塊化模式大概有幾種: AMD、CommonJs、UMD。
AMD(Asynchronous Module Definition)
異步模塊定義,可以異步的加載或依賴其他模塊,支持的庫如 Require.js, Sea.js 。
例子:
// xxx-plugin.jsdefine(['jquery'], function ($) { function myFunc(){}; return myFunc;});CommonJs
可以將Javascript按照 Node 模塊的方式定義。
例子:
var $ = require('jquery');function myFunc(){};module.exports = myFunc;UMD(Universal Module Definition)
為了兼容 AMD 和 CommonJs風格,出現了UMD。
代碼:
(function (root, factory) { if (typeof define === 'function' && define.amd) { // AMD define(['jquery'], factory); } else if (typeof exports === 'object') { // Node, CommonJS-like module.exports = factory(require('jquery')); } else { // Browser globals (root is window) root.returnExports = factory(root.jQuery); }}(this, function ($) { function myFunc(){}; return myFunc;}));以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!
新聞熱點
疑難解答