小程序onload_用Rust语言开发微信小程序:wasm-bindgen

wasm-bindgen 提供 WebAssembly(wasm) 模块和 JavaScript 之间的高级别交互,我们可以用它来访问微信小程序的API。
首先在Cargo.toml中引入依赖的库(js-sys是wasm-bindgen中的JS原始API绑定库):

[package]

然后添加Rust代码:

use

其中,extern "C" {} 中是导入的js函数,包括:

console

另外导出了两个Rust函数onLoad和run,可以通过模块访问。

在page_on_load中,使用Reflect来创建showModal的参数,如果方法中出现异常错误,会在console.error()中打印日志。

最后编译它:

:: 

pack.js是预处理脚本,对hello_bg.js和hello.js做了一些修改,使之可以在小程序中正常运行。

微信小程序目前仍然不支持Webassembly,需要调用wasm2js将wasm转换成js文件,wasm2js.exe是emsdk里的工具,参考这里安装:

https://emscripten.org/docs/getting_started/downloads.html​emscripten.org

下面看小程序的代码,在index中引入hello.js(run是启动函数可以不调用):

//index.js

运行结果:

7a4e91ead462f9c3a34eace9df8da345.png

再写一个导出md5函数的例子:

[dependencies]
#[wasm_bindgen]

调用它:

//index.js

输出:

MD5

完整代码:

https://github.com/planet0104/wx-wasm-bindgen​github.com
97fb59bc9580255c49afb68a0e1f45a9.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值