gpt4 book ai didi

javascript - 如何在没有命名空间的情况下从 JavaScript 调用 Rust 函数?

转载 作者:行者123 更新时间:2023-11-29 08:32:34 29 4
gpt4 key购买 nike

我正在使用 stdweb library从 JavaScript 调用 Rust 函数:

#[js_export]
fn handleClick(e: Value) {
js!{ alert("Hello!"); }
}

它可以工作,但我必须添加命名空间 Module.exports. 才能调用它:

React.createElement("p",{onClick: e => Module.exports.handleClick(e) }, ... }

如何隐藏此命名空间或使其变小?

最佳答案

我无法通过 JavaScript 按名称调用 Rust 函数,除非我先导出它 (#[js_export])。但是,来自 stdweb libraryjs! 宏允许 JavaScript 代码调用常规 Rust 函数:

fn handleClick(e: Value) {
js!{ alert("Hello!"); }
}

调用它:

js!{
React.createElement("p",{onClick: @{handleClick} }, ...);
}

或者,如果您确实需要为函数命名:

js!{
const fct = @{handleClick};
React.createElement("p",{onClick: fct}, ...);

关于javascript - 如何在没有命名空间的情况下从 JavaScript 调用 Rust 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51083241/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com