javascript的模組化封裝技巧:同時支援AMD和原生直接引用
阿新 • • 發佈:2021-12-13
並不是什麼新鮮東西,很多JS庫都使用這種方式進行模組化封裝,便於各種情況下的引用。
假設開發完成的JS庫(模組):myjssdk.js,使用原生及AMD的引用方式如下:
1、原生方式:
<script src="//www.test.com/myjssdk.js"></script>
2、AMD方式:
<!-- 需要先引入requirejs庫,並在config檔案中註冊“myjssdk” --> <script> require(['myjssdk'], function(jssdk){ jssdk.info(); }); </script>
實現方式:
(function (global, factory) { if (typeof define === 'function' && define.amd) { // AMD規範 define(factory); } else { // 瀏覽器註冊全域性物件,自定義物件名:MyJSSDK global.MyJSSDK = factory(); } })(this, (function () { //主要業務邏輯 function say() { console.log('hello jssdk'); } //對外暴露方法 return { say: say } }))
還可以按照這種方式繼續擴充套件,支援CMD、CommonJS、ES6等模組的封裝。
版權宣告: 本文為博主 網無忌 原創文章,歡迎轉載,但請務必標註原文連結。