3 个不稳定版本

0.2.0 2021年1月27日
0.1.1 2021年1月27日
0.1.0 2021年1月27日

#723Cargo 插件

MIT 许可证

20KB
121 代码行

cargo-刀

  1. if [] == ![] {console.log("javascript sucks") }
  2. JavaScript 的唯一替代品是 WASM
  3. Rust 编译成 WASM
  4. Rust 很棒
  5. 用 Rust 替换 Javascript

这是什么?

目前,要从 Rust 生成多个库输出,只能使用多个 crate。这有几个缺点,尤其是当你想要多个 WASM 文件时。

  1. 你需要多个 Cargo.toml 文件,并需要为每个指定依赖
  2. 如果你有共享依赖,你还需要为它们指定一个单独的 crate

cargo-daowasm-pack(一个非常好的工具)的包装器,允许你使用单个 crate 编译多个 wasm 二进制文件。你只需要为每个输出二进制文件的代码部分添加 #[cfg(dao = "output_name")](有点像功能)。cargo-dao 将自动检测所有 #[cfg] 的实例,并为每个实例编译一个单独的二进制文件。

示例

wasm-pack-example 目录下,运行 cargo dao --target web --out-dir web/pkg,并在 web/ 中启动一个 web 服务器。检查浏览器中的控制台输出!

依赖

~37–50MB
~1M SLoC