[英]what are the advantages of using an AMD like requirejs or commonjs modules in javascript?
[英]What is the proper way to declare a javascript standalone library that works in nodejs, browser, commonJS, and AMD?
因此,在我的庫文件中,我聲明了以下內容:
(function(mylib){
"use strict";
mylib.funcA = function () {return "A"};
mylib.funcB = function () {return "B"};
})(typeof mylib == "undefined" ? (this["mylib"]={}) : mylib);
//我一直在使用這樣的東西,它可以在我可以使用的瀏覽器中使用
<script src="mylib.js"></script>
<script>
console.log(mylib.funcA()); // outputs "A"
console.log(mylib.funcB()); // outputs "B"
</script>
//並且在nodejs中,我可以使用
mylib = require("mylib.js")["mylib"];
console.log(mylib.funcA()); // outputs "A"
console.log(mylib.funcB()); // outputs "B"
但是我只想有一個包裝方法,我可以讓用戶正確地聲明該庫並可以在所有常見的js版本中使用。
我已經在堆棧溢出問題上看到了幾個不同的答案,但是沒有人提供一個簡單的示例說明如何做到這一點。 幫助贊賞!
您需要一個UMD模塊。
UMD標准存儲庫中有一個可以滿足您的需求的存儲庫: https : //github.com/umdjs/umd/blob/master/templates/returnExports.js
Nore信息和更多模板在這里: https : //github.com/umdjs/umd
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.