gpt4 book ai didi

html - 如何使用 Wasm 和 Rust 服务多个 HTML 页面?

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

我正在尝试构建一个在客户端运行 wasm 的 Web 应用程序,我想知道什么是服务多个页面的好方法。
我主要关心的是性能,因为我想将应用程序拆分为上下文 block ,而不是让一个页面包含所有内容。

我将 Rust 与 Yew framework 一起使用对于客户端,到目前为止我只使用了yew_router在客户端处理不同的路由,但它们都来自同一个 HTML 页面和 Wasm 模块。现在我希望能够使用单独的 Wasm 模块为不同的 HTML 页面提供服务,但我不确定如何实现这一点。我真的必须为每个页面编写一个专用的 crate 并将它们编译为单独的 Wasm 模块,以便我可以单独为它们提供服务吗?或者有什么方法可以将一个 rust crate 编译成多个 Wasm 模块?

我当前的项目结构如下所示:

.
├── Cargo.toml // workspace manifest
├── client
│   ├── Cargo.toml
│   ├── favicon.ico
│   ├── index.html
│   ├── main.js
│   ├── Makefile
│   ├── pkg // built using wasm-pack and rollup
│ │ ├── bundle.js
│ │ ├── client_bg.d.ts
│ │ ├── client_bg.wasm
│ │ ├── client.d.ts
│ │ ├── client.js
│ │ ├── package.json
│ │ └── snippets
│   ├── src
│   ├── statics
│   ├── styles
│   └── vendor
├── server
│   ├── Cargo.toml
│   └── src
└── ... other crates

我在 client/ 内运行服务器它以 index.html 响应任何传入的 GET要求。 index.html链接到 bundle.jspkg/设置 client_bg.wasm模块。

现在我基本上想用另一个 HTML 页面和另一个 Wasm 模块来做这个,最好是来自 client 中的同一个 Yew 应用程序。箱。

谢谢

最佳答案

目前不可能从一个 crate 生成两个 wasm 文件。解决方案是为每个 wasm 文件创建一个,然后让另一个构建系统将输出放置到正确的位置。

关于html - 如何使用 Wasm 和 Rust 服务多个 HTML 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60917841/

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