我正在为web应用程序编写后端,希望为客户端重用一些逻辑。我想使用wasm生成一个Javascript可以使用的库。假设逻辑在lib.rs中。我应该怎么做,这样:
- 后端可以正常导入和使用lib.rs中的代码,也可以按照预期生成二进制代码
- Rust为lib.rs生成一个wasm库
我尝试将这些添加到我的货物文件中(通过以下操作:同时带有库和二进制文件的Rust包?(:
[lib]
crate-type = ["cdylib", "rlib"]
[[bin]]
name = "mybin"
path = "src/main.rs"
但看起来cargo正在为浏览器构建二进制文件,所以它缺少所有的系统机箱。
您可以要求使用--lib
选项只构建您的库。
cargo build --lib --target wasm32-unknown-unknown
因此,我目前的方法是为lib.rs创建一个单独的包,并将其用作后端的依赖项,如下所示:为集成测试和基准测试共享实用程序函数的惯用方法是什么?它似乎已经足够好用了。