19 个版本 (重大变更)

0.21.0 2023 年 9 月 29 日
0.20.0 2022 年 11 月 25 日
0.19.3 2021 年 12 月 11 日
0.18.0 2021 年 5 月 15 日
0.7.0 2019 年 7 月 19 日

1238WebAssembly

Download history 8664/week @ 2024-03-14 10184/week @ 2024-03-21 10053/week @ 2024-03-28 8797/week @ 2024-04-04 10126/week @ 2024-04-11 9634/week @ 2024-04-18 8956/week @ 2024-04-25 8233/week @ 2024-05-02 7281/week @ 2024-05-09 7912/week @ 2024-05-16 7284/week @ 2024-05-23 9216/week @ 2024-05-30 8099/week @ 2024-06-06 7811/week @ 2024-06-13 7798/week @ 2024-06-20 6994/week @ 2024-06-27

每月 32,199 次下载
用于 245 个 Crates (直接使用 3 个)

MIT/Apache

185KB
4.5K SLoC

关于

Yew 是一个用于创建使用 WebAssembly 的多线程前端网络应用的现代 Rust 框架。

  • 具有用于声明交互式 HTML 的宏,对于有使用 React 中的 JSX 经验的开发者来说,使用 Yew 应该感到非常熟悉。
  • 通过最小化每个页面渲染时的 DOM API 调用,并简化将处理任务卸载到后台网络工作者的操作,实现了高性能。
  • 支持 JavaScript 互操作性,允许开发者利用 NPM 包并与现有 JavaScript 应用程序集成。

注意:Yew 尚未达到 1.0 版本。请做好进行重大重构的准备,因为 API 变更可能会破坏兼容性。

贡献

Yew 是一个社区项目,我们欢迎所有背景的开发者,无论贡献大小,都积极参与。我们希望 Yew 社区成为一个有趣且友好的地方,请阅读我们的 行为准则,了解哪些行为是不被容忍的。

🤠 新手使用 Yew 吗?

通过帮助我们改进 文档 来开始了解这个框架。欢迎提交提高测试覆盖率的 pull requests。

😎 寻找灵感?

请在 jetli/awesome-yew 查看社区整理的与 Yew / WebAssembly 相关的精彩内容列表。

🤔 感到困惑?

请随时加入我们的 Discord 聊天室 或打开一个 新“问题”问题 来获取贡献者的帮助。通常问题会导致框架用户体验的改进、更好的文档,甚至新功能!

🙂 准备深入研究代码了吗?

在审查了 贡献指南 之后,查看 “良好的首次问题”(它们渴望得到关注!)一旦找到您感兴趣的问题,请随意将其分配给自己,并不要犹豫寻求指导,问题的复杂程度各不相同。

😱 发现了一个错误?

报告所有错误! 如果有兴趣并且有时间,我们很乐意帮助开发人员修复他们发现的错误。

🤓 想要帮忙翻译?

翻译可以在 Yew GitLocalize Repo 上提交。如果您有兴趣成为某个语言的官方调解员,请通过 Discord 联系我们。

贡献者

代码贡献者

这个项目能存在是因为所有贡献者。

财务贡献者

成为财务贡献者,帮助我们维持社区。 [贡献]

个人

组织

使用您的组织支持此项目。您的标志将在这里显示,并带有链接到您的网站。 [贡献]


lib.rs:

这个包提供了 Yew 的过程宏 html!,它允许使用类似 JSX 的语法来生成 html,以及用于为组件派生 Properties 特性的 Properties derive 宏。

use yew::prelude::*;

struct Component;

#[derive(Properties, PartialEq)]
struct Props {
    prop: String,
}

#
#
#
#
// ...

html! {
  <div>
    <button onclick={ctx.link().callback(|_| Msg::Submit)}>
      { "Submit" }
    </button>
    <>
      <Component prop="first" />
      <Component prop="second" />
    </>
  </div>
}
#
#

有关如何设置的详细信息,请参阅 https://github.com/yewstack/yew

依赖关系

~0.6–1.1MB
~25K SLoC