gpt4 book ai didi

javascript - 声明可在 Nodejs、浏览器、commonJS 和 AMD 中工作的 javascript 独立库的正确方法是什么?

转载 作者:太空宇宙 更新时间:2023-11-04 01:46:00 26 4
gpt4 key购买 nike

所以在我的库文件中我声明如下:

(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

这里没有更多信息和更多模板:https://github.com/umdjs/umd

关于javascript - 声明可在 Nodejs、浏览器、commonJS 和 AMD 中工作的 javascript 独立库的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51453367/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com