3个版本
0.1.2 | 2019年1月13日 |
---|---|
0.1.1 | 2018年11月23日 |
0.1.0 | 2018年10月26日 |
#899 in WebAssembly
每月 21次下载
46KB
1.5K SLoC
Draco
Draco是一个用于使用Web Assembly构建客户端Web应用的Rust库。
Draco实现了Redux和Elm启发的架构。Draco应用程序的核心由两个函数组成
render
:返回屏幕上应渲染的描述。这个描述通过使用Virtual DOM diffing以最小的补丁数量高效地应用于浏览器的DOM。update
:接收一个消息并更新应用程序的状态。每次更新后,应用程序都会重新渲染。
入门
这里有一个入门crate:这里。
要运行它,克隆仓库
$ git clone https://github.com/utkarshkukreti/draco-starter
$ cd draco-starter
并按照其README中的说明操作。
示例
目前文档不多。如果您想了解更多,最好的方式是阅读示例的源代码。
我们建议从Hello World开始,然后是Counter,最后是Counters。
要构建示例,您需要安装Ruby和wasm-bindgen-cli。
$ cd /path/to/this/repo
$ rake
现在启动您选择的HTTP服务器1,然后在浏览器中打开target/examples/index.html
以运行示例。
[1] Python 2/3的内置HTTP服务器(可能还有其他服务器)无法正常工作,因为浏览器需要以MIME类型.wasm
提供application/wasm
文件,而这正是它们所不具备的。如果您选择的HTTP服务器无法正常工作,请尝试serve。
依赖项
~6.5–9MB
~172K SLoC