我正在尝试学习如何制作NPM软件包,我认为这很容易:用对象文字创建JS文件,导出模块,然后在另一端,让用户要求该文件并使用该对象: objectname.method
。问题是我的目标用户将要使用我的库来制作html5游戏。我没有制作客户端应用程序的经验,也没有真正了解没有这些方法如何导入和需要文件。
我将如何实现? 我以为我可以喜欢nodeJS并通过module.exports = {}
来制作文件我要导出的对象的示例。老实说,我很喜欢它,所以它可能是完全错误的。
//modEx.js
module.exports = {
drawBall: (ctx, x, y, ballRadius) => {
ctx.beginPath();
ctx.arc(x, y, ballRadius, 0, Math.PI * 2);
ctx.fillStyle = "#0095DD";
ctx.fill();
ctx.closePath();
},
hello: function() {
return "HELLO";
}
};
然后我通过尝试导入/请求另一个文件并打开带有脚本标签的html文件进行测试。
//example.js
const mod_ex = require("./mod_ex");
console.log('hello',mod_ex.hello); #=> hello, undefined
答案 0 :(得分:1)
似乎您需要将lib与Webpack或任何其他捆绑程序捆绑在一起。
答案 1 :(得分:1)
将js文件与webpack或包裹或其他捆绑器捆绑在一起,或者仅使用<script type="module">
,就可以使用es6 import。但是,支持率大约占所有浏览器的80%。