Hasty Briefsbeta

双语

Show HN: Fusor – Like Vue, but the logic is Rust

10 hours ago
  • Fusor框架将组件和页面文件结合起来,其中Rust代码和HTML模板通过四个关键接口集成:rust:component用于状态定义,bindings用于基于信号变化的动态值显示和更新,on:click/bind用于事件处理和输入到信号的同步,以及template!宏用于将模块与其HTML连接,以便编译器进行验证。
  • 运行'fusor new'会创建初始项目结构,包括Cargo.toml、build.rs和src/lib.rs;额外的组件模块必须在src/lib.rs中声明。
  • HTML模板以标准标记语言编写,包含CSS样式,Rust代码通过双括号表达式或特殊属性(如on:click)插入。
  • 应用状态由Rust结构体表示,其方法作为行为;编译器会检查所有模板表达式与此结构体的一致性。
  • Rust代码被编译为WebAssembly以供浏览器执行,绑定了跟踪信号依赖关系,仅在相关信号变化时重新渲染,优化性能。
  • 监听器、效果和请求限定在其所属组件范围内,并在组件被移除时自动清理;<Async>元素允许在等待新数据时保留之前的视图。