18 个版本
0.6.0-alpha.2 | 2024 年 8 月 7 日 |
---|---|
0.5.6 | 2024 年 7 月 18 日 |
0.5.0 | 2024 年 3 月 28 日 |
0.4.3 | 2023 年 12 月 7 日 |
0.2.0 | 2022 年 3 月 9 日 |
在 GUI 中排名 772
每月下载量 12,402
用于 53 个 Crates(直接使用 6 个)
270KB
4.5K SLoC
dioxus-interpreter-js
概述
dioxus-interpreter-js
提供 Dioxus VirtualDom 产生的编辑流的高性能 JavaScript 桥接,并将它们转换为实际 web DOM 上的突变。
该软件包具有用于 web 和 sledgehammer 的绑定,以提高性能。
架构
我们使用 TypeScript 编写绑定,并使用一个非常简单的 build.rs 以及 bun 将它们转换为 JavaScript,压缩它们并将它们粘接到项目其余部分。
并非每个 JS 片段都会被使用,因此我们将这些片段从核心解释器中分离出来。
理论上,我们可以使用 Rust 在浏览器中完成这些绑定所做的一切。实际上,我们想继续使用 JS 以避免在运行 LiveView 和 WebView 渲染器时需要 WASM 编译步骤。我们还想使用 JS 以防止像取消事件、上传文件和收集表单输入这样的行为出现分歧。在两种语言中实现这些细节时,确保 1:1 兼容性是非常困难的。
如果您想为绑定做出贡献,您需要在您的机器上安装 TypeScript 编译器和 bun。
https://bun.net.cn/docs/installation
贡献
- 在我们的 问题跟踪器 上报告问题。
- 加入 Discord 并提问!
许可证
本项目采用 MIT 许可证。
除非您明确声明,否则您提交给 Dioxus 的任何贡献都将按 MIT 许可证许可,不附加任何额外条款或条件。
依赖项
~0–8MB
~61K SLoC