mirror of
https://github.com/DioxusLabs/dioxus
synced 2024-11-23 04:33:06 +00:00
6.4 KiB
6.4 KiB
Dioxus 是一个可移植的、高性能的、符合人体工程学的框架,使用 Rust 语言构建跨平台的用户界面。
fn app() -> Element {
let mut count = use_signal(|| 0);
rsx! {
h1 { "High-Five counter: {count}" }
button { onclick: move |_| count += 1, "Up high!" }
button { onclick: move |_| count -= 1, "Down low!" }
})
}
Dioxus 可用于生成 网页前端、桌面应用、静态网站、移动端应用、TUI 程序、 liveview 程序等多类平台应用,Dioxus 完全与渲染器无关,可以作用于任何渲染平台。
如果你能够熟悉使用 React 框架,那 Dioxus 对你来说将非常简单。
独特的特性:
- 只需不到 10 行代码就能原生运行桌面程序(并非 Electron 的封装)
- 符合人体工程学的设计以及拥有强大的状态管理
- 全面的内联文档 - 包含所有 HTML 元素、监听器 和 事件 指南。
- 极快的运行效率 🔥🔥 和极高的内存效率
- 智能项目热重载以便快速迭代
- 使用协程和 Suspense 来进行一流的异步支持
- 更多内容请查看 版本发布信息.
已支持的平台
网站项目 |
|
桌面应用 |
|
移动端应用 |
|
Liveview |
|
终端程序 |
|
为什么选择 Dioxus?
目前有非常多的应用开发选择,为什么偏偏要选择 Dioxus 呢?
首先,Dioxus 将开发者的体验放在首位。这体现在 Dioxus 特有的各种功能上。
- 自动格式化 RSX 格式代码,并拥有 VSCode 插件作为支持。
- 热加载基于 RSX 代码解析器,同时支持桌面程序和网页程序。
- 强调文档的重要性--我们的指南是完整的,并且我们对所有 HTML 元素都提供文档支持。
Dioxus 也是一个可扩展化的平台。
- 通过实现一个非常简单的优化堆栈机,轻松构建新的渲染器。
- 构建并分享开发者自定义的组件代码。
Dioxus 那么优秀,但什么时候它不适合我呢?
- 它还没有完全成熟。api 仍在变化,可能会出现故障(尽管我们试图避免)
- 您需要运行在 no-std 的环境之中。
- 你不喜欢使用 React-like 的方式构建 UI 项目。
贡献代码
开源协议
本项目使用 MIT license.
除非您另有明确声明,否则有意提交的任何贡献将被授权为 MIT 协议,没有任何附加条款或条件。