跳至内容
文档
插件
发布

发布插件

如果您更喜欢阅读代码,可以参考 官方插件的仓库 (在新标签页中打开).

创建 npm 包

构建一个 wasm 插件

您可以通过运行以下命令将插件作为 wasm 文件运行

cargo build-wasi --release // build wasm32-wasi target binary
cargo build-wasm32 --release // build wasm32-unknown-unknown target binary

它将创建 target/wasm32-wasi/release/your_plugin_name.wasmtarget/wasm32-unknown-unknown/release/your_plugin_name.wasm,具体取决于您的配置。

为插件创建 npm 包

将以下内容添加到您的 package.json

package.json
{
    "main": "your_plugin_name.wasm",
    "scripts": {
        "prepack": "cargo prepublish --release && cp target/wasm32-wasi/release/your_plugin_name.wasm ."
    },
}

高级:改进您的插件

调整配置以获得更小的二进制文件

您可以通过配置 cargo 来减小插件的大小。

在您的 Cargo.toml 文件中,您可以添加以下行。

Cargo.toml
[profile.release]
# This removes more dead code
codegen-units = 1
lto = true
# Optimize for size
opt-level = "s"
# Optimize for performance, this is default so you don't need to specify it
# opt-level = "z"
 
# Strip debug symbols
strip = "symbols"

删除发布模式的日志

如果您的 crate 的日志过多,您可以通过启用 release_max_level_* of tracing 来删除它,例如

tracing = { version="0.1", features = ["release_max_level_info"] }