全局安装rsw
cargo intsall rsw
首先用脚手架创建项目,下面三选一
npm init mpl@latest
yarn create mpl
pnpm create mpl
选项如下:
项目结构
├── 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的改动能够及时的热更新到项目中。
如果要增加其他rust的crate,只需要重复rsw new和修改rsw.toml文件就好啦。可以把所有rust项目都放到一个目录下,像这个例子一样:github.com/rwasm/learn…