在下面的示例中,https://github.com/rustwasm/wasm-bindgen/tree/master/examples/import_js运行良好。下一步,我尝试导入一个具有2级模块的js-module。让mylib.part1.MyClass来引用MyClass。
在我尝试导入的rust wasm-bindgen文件中:
#[wasm_bindgen(module = "/defined-in-js.js")]
extern "C" {
type MyClass;
#[wasm_bindgen(constructor, js_namespace = mylib.part1)]
fn new() -> MyClass;
}这会产生构建错误:
error: expected `,`
--> src/lib.rs:13:53
|
13 | #[wasm_bindgen(constructor, js_namespace = mylib.part1)]
| ^可以在wasm-bindgen中进行导入吗?替代一些变通解决方案,在没有2个模块级别的情况下在js中重新导出(尝试过,但没有管理)。
发布于 2021-08-23 06:14:44
实际记录在这里的https://rustwasm.github.io/docs/wasm-bindgen/reference/attributes/on-js-imports/js_namespace.html
这就变成了:
#[wasm_bindgen(module = "/defined-in-js.js")]
extern "C" {
#[wasm_bindgen(js_namespace = ["mylib", "part1"], js_name = MyClass)]
type MyClass;
#[wasm_bindgen(constructor, js_namespace = ["mylib", "part1"], js_name = MyClass)]
fn new() -> MyClass;
}https://stackoverflow.com/questions/59788547
复制相似问题