gpt4 book ai didi

promise - Rust/Webassembly/wasm-bindgen - 从 `js_sys' Promise 获取值

转载 作者:行者123 更新时间:2023-12-03 11:30:05 26 4
gpt4 key购买 nike

我在玩 wasm-bindgen ( https://github.com/rustwasm/wasm-bindgen ),只是出于好奇。

一边玩Navigator ( web_sys crate) 我偶然发现了这个方法:

https://docs.rs/web-sys/0.3.36/web_sys/struct.MediaDevices.html#method.enumerate_devices

它返回一个 Result<Promise, JsValue> ..现在,我是 Rust 的新手,我的问题是如何获取 Promise 的值?
Closure::wrap怎么了作品?
如何使用 then获取结果的方法?

我想知道是否有人可以这么好心地向我解释如何处理Promise

这是一个返回 Promise 的示例:

let window = web_sys::window().expect("no global `window` exists");
let navigator = window.navigator();

if let Ok(devs) = navigator.media_devices() {
if let Ok(prom) = devs.enumerate_devices() {
//..??? how to list all devices
}
}

祝一切顺利,
卢卡

最佳答案

official documentation available on the wasm-bindgen site .

总之,您可以使用 wasm_bindgen_futures::JsFuture::from(promise).await?检索 promise 的结果并继续使用通常的 Rust async功能。

关于promise - Rust/Webassembly/wasm-bindgen - 从 `js_sys' Promise 获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60786667/

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