繁体   English   中英

在npm上发布wasm库的首选方法是什么?

[英]What is the preferred way to publish a wasm library on npm?

有没有一种好的方法来发布在npm上使用wasm二进制文件的库?

到目前为止,我遇到了几个问题。 理想情况下,我想要的是:

  • 对用户完全透明 他们可以简单地npm install软件包,然后import {my_function} from my_package ,甚至不必担心该软件包是否使用wasm二进制文件。

  • 与所有主要资产捆绑器兼容 无论用户使用的是webpackrollupparcel还是其他东西,他都不必配置任何内容即可将其打包在wasm文件中,与其他资产一起分发,并从我的库中进行访问。

  • 高效的 理想情况下,wasm文件不会 内联到js文件中,因此可以以流方式对其进行解析和编译。 这一点没有其他方面重要,但是能够充分利用wasm提供的所有速度将非常不错。

我认为这很大程度上取决于您开始使用的生态系统和语言。我熟悉的一个途径是将Rust移植到wasm项目 从他们的文档中可以看出,他们的过程实现了您对用户透明的第一个要点。

而且似乎他们的过程提供了通过JavaScript来访问wasm文件的绑定 ,而不是内联。 它将照顾您的子弹以提高效率

他们的工作流程仅为npm创建基本文件(package.json和构建/依赖项的详细信息)。 如果应用程序直接import wasm from 'library/src/library.wasm'文件( import wasm from 'library/src/library.wasm'我可以看到资产wasm存在问题。 但是,您可以使用一些谷歌搜索功能为列出的所有捆绑程序添加插件。 我不确定您是否想在库本身中添加这些插件,或者是正确的方法。 因此,我不确定您在这里的第二点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM