如何将一些 wasm 文件用于不依赖于 wasm-pack 的其他 javascript 项目?

How do I use some wasm files for other javascript projects which are not dependent on wasm-pack?

我可以从任何 javascript 调用 wasm 文件中声明的函数吗?

Wasm 文件由 wasm-pack 使用 Rust lang、wasm-pack、wasm-bindgen 和 webpack 构建。他们在原始环境中工作正常。

我想将一些 wasm 文件用于不依赖于 wasm-pack 的其他 javascript 项目。例如node.js.

开发的一个最简单的浏览器hello-world演示工程

编辑:我已经阅读了关于如何从 javascript 调用 wasm 函数的一般概念。但是我不能自己将它应用到我的情况中。比如文章只讲了关于构建一个wasm文件。但就我而言,pkg 目录中存在许多文件,其中一些文件是 js 文件。我可以忽略pkg目录中的所有这些js文件吗?

General concept

给我一个问题

But for my case, there exist many files in the pkg directory of which some files are js files. Can I neglect all such js files in pkg directory?

这些文件是 jsrust-wasm 之间的粘合剂。你可以忽略它们,但它们需要用其他胶水代替。

对我来说最简单的就是例子without-a-bundler

部署时需要 3 个文件:

pkg/without_a_bundler_bg.wasm, pkg/without_a_bundler.js, index.html

在运行时,rust 从这里的 js 调用: call rust-wasm add function

此函数调用是在 wasm-bindgen 胶水内完成的,例如从开发控制台未知。还没有尝试过,但对于这个小例子来说,生成的 pkg/without_a_bundler.js 只有 195 行,因此为了调查可以移植到另一个项目中。