#wasm-js #inline #js #embed-js #javascript

embed_js_common

embed_js 和 embed_js_build 的实现细节,请勿直接使用

5 个不稳定版本

使用旧的 Rust 2015

0.3.0 2017 年 12 月 21 日
0.2.1 2017 年 12 月 18 日
0.2.0 2017 年 12 月 18 日
0.1.1 2017 年 12 月 17 日
0.1.0 2017 年 12 月 17 日

#13 in #wasm-js


3 个 crate (2 直接) 使用

MIT/Apache

10KB
195

embed_js

针对通过 wasm32-unknown-unknown 目标针对 WebAssembly 的 Rust 应用程序的极简轻量级内联 JavaScript。

此项目提供了一个低级接口,旨在供其他 crate 在其之上构建更高级、更易用的 API。

入门

尝试运行示例(在 examples 子目录中)以了解各个组件如何协同工作。

要构建 wasm 应用程序,请确保您安装了最新的 Rust 夜间构建版本和 wasm32-unknown-unknown 目标。

设置示例

示例需要安装 cargo-makecargo-scriptwasm-gc

在示例目录中,请确保您已设置 rustup 以使用夜间 Rust 构建版本。

使用 cargo make 构建示例,这将确保运行后构建脚本。生成的自包含 HTML 文件应在 "target/wasm32-unknown-unknown/release/" 中,并且可以在支持 WebAssembly 的浏览器中运行。

根据示例,您可能需要在浏览器中(F12)检查控制台日志以查看其输出。

通用用法

有两个 crate 可以使用。 embed_js 用于使用 js 宏嵌入 JavaScript 的 crate。 embed_js_build 应该用作这些 crate 构建脚本中的预处理阶段。 embed_js_build 也应该由构建 wasm 二进制文件的 crate 在其 -构建脚本中使用,以便在加载 wasm 模块时导入生成的伴随 JavaScript。

有关更详细的使用信息,请参阅两个 crate 的文档,或查看此存储库中的示例。

embed_js 文档

embed_js_build 文档

[dependencies]
embed_js = "^0.1.4"
[build-dependencies]
embed_js_build = "^0.1.4"

限制

目前,js 宏不能在宏内部使用,除了 include! 宏。这可能在将来得到解决。

许可证

根据以下任一项许可:

任选其一。

贡献

除非你明确指出,否则根据Apache-2.0许可证定义的,你提交的任何有意包含在作品中的贡献,都将按照上述方式双重许可,不附加任何额外条款或条件。

依赖项

~1.4–2MB
~44K SLoC