#客户端 #Web应用 #应用程序 #汇编 #构建 #渲染

draco

Draco是一个用于使用Web Assembly构建客户端Web应用的Rust库

3个版本

0.1.2 2019年1月13日
0.1.1 2018年11月23日
0.1.0 2018年10月26日

#899 in WebAssembly

每月 21次下载

MIT/Apache

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