rsw与多rust-wasm项目

125 阅读1分钟

全局安装rsw

cargo intsall rsw

首先用脚手架创建项目,下面三选一

npm init mpl@latest
yarn create mpl
pnpm create mpl

选项如下:

image

项目结构

├── README.md
├── index.html
├── package.json
├── pnpm-lock.yaml
├── public
│   └──  vite.svg
├── rsw-hello
│   ├── Cargo.lock
│   ├── Cargo.toml
│   ├── README.md
│   ├── src
│   ├── target
│   └── tests
├── src
│   ├── App.css
│   ├── App.tsx
│   ├── assets
│   ├── index.css
│   ├── logo.svg
│   ├── main.tsx
│   └── vite-env.d.ts
├── tsconfig.json
├── tsconfig.node.json
└── vite.config.ts

根目录下rsw init,会出现一个rsw.toml的文件,这就是我们管理rust的crate的地方啦。可以改一下cli字段,这里我们用的是pnpm。

可以注意到有个rsw-hello的rust项目,我们把他添加到rsw.toml文件里面

#! 📦 -------- package: rsw-hello --------
[[crates]]
name = "rsw-hello"
link = true

现在运行pnpm run dev

仔细查看命令行,自动在rsw-hello下运行了wasm-pack build,并且link到了本地。在最后rsw:watch能让rust的改动能够及时的热更新到项目中。

image

如果要增加其他rust的crate,只需要重复rsw new和修改rsw.toml文件就好啦。可以把所有rust项目都放到一个目录下,像这个例子一样:github.com/rwasm/learn…