如何使用Rust在Webview中加载WASM模块?

时间:2019-01-09 04:14:54

标签: reactjs webview rust webassembly wasm-bindgen

我正在尝试在webview中托管一个React应用,该应用使用已编译的Rust-> WebAssembly模块。

我收到此错误:

Unhandled promise rejection: TypeError: URL is not valid or contains user credentials.

在以下组件之一中调用WASM模块:

const { mymod } = require("../../wasm/mymod");

然后我使用webpack将其打包。

const webpackConfig = {
  entry: "./frontend/bootstrap.js",
  output: {
    path: path.resolve(__dirname, "dist"),
    filename: "bundle.js",
  },
  mode: "development",
  module: {
    rules: [
    ]
  },
  plugins: [
    new HtmlWebPackPlugin({
      template: "./frontend/index.html"
    }),
    new MiniCssExtractPlugin(),
  ]
};

然后将其加载到webview中:

fn main() {
    let html = format!(r#"...");

    web_view::builder()
        .title("my app")
        .content(Content::Html(html))
        .size(320, 480)
        .resizable(true)
        .debug(true)
        .user_data(())
        .invoke_handler(|_webview, _arg| Ok(()))
        .run()
        .unwrap();
}

JavaScript调试器中的错误导致以下代码行:

var req = fetch(__webpack_require__.p + "" + {"./frontend/wasm/mymod_bg.wasm":"31335016d485c8fcb290"}[wasmModuleId] + ".module.wasm")

0 个答案:

没有答案