Rust 如何将闭包转换为js_sys::Function?

Rust 如何将闭包转换为js_sys::Function?,rust,webassembly,wasm-bindgen,Rust,Webassembly,Wasm Bindgen,如何将中的本地闭包转换为js_sys::function 我想这样做: let canvas = document.get_element_by_id("canvas").unwrap(); let e: web_sys::HtmlElement = canvas.dyn_into().unwrap(); let f = || {}; e.set_onresize(Some(&f.into())); 我找到了这个 就像: let f = Closure::wrap(Box::new(

如何将中的本地
闭包转换为
js_sys::function

我想这样做:

let canvas = document.get_element_by_id("canvas").unwrap();
let e: web_sys::HtmlElement = canvas.dyn_into().unwrap();
let f = || {};
e.set_onresize(Some(&f.into()));
我找到了这个

就像:

let f = Closure::wrap(Box::new(move || { /* whatever */}) as Box<dyn FnMut()>);
e.set_onresize(Some(f.as_ref().unchecked_ref()));
f.forget(); // It is not good practice, just for simplification!
let f=Closure::wrap(Box::new(将| |{/*无论什么*/})移动为Box);
e、 设置调整大小(一些(f.为未选中的\u ref());
f、 忘记();//这不是好的做法,只是为了简化!

知道如何将带参数的函数也转换为js_sys::function吗?@ChetanBhasin,同样的方法(我猜!),会出现什么错误?