Function wasm_bindgen_futures::future_to_promise
source · pub fn future_to_promise<F>(future: F) -> Promisewhere
F: Future<Output = Result<JsValue, JsValue>> + 'static,Expand description
Converts a Rust Future into a JavaScript Promise.
This function will take any future in Rust and schedule it to be executed,
returning a JavaScript Promise which can then be passed to JavaScript.
The future must be 'static because it will be scheduled to run in the
background and cannot contain any stack references.
The returned Promise will be resolved or rejected when the future completes,
depending on whether it finishes with Ok or Err.
Panics
Note that in wasm panics are currently translated to aborts, but “abort” in this case means that a JavaScript exception is thrown. The wasm module is still usable (likely erroneously) after Rust panics.
If the future provided panics then the returned Promise will not
resolve. Instead it will be a leaked promise. This is an unfortunate
limitation of wasm currently that’s hoped to be fixed one day!