Mitosis项目发布Angular信号API支持与JSX转义优化
Mitosis是一个创新的前端框架,它允许开发者使用单一代码库生成多种框架的代码。通过Mitosis,开发者可以编写一次组件,然后输出为React、Vue、Angular等多种框架的代码,大大提高了跨框架开发的效率。
Angular信号API全面支持
本次0.9.0版本最重要的更新是对Angular 17.2+信号(Signals)API的全面支持。Angular团队在17.2版本中引入了信号这一新特性,作为响应式编程的新范式。
在Mitosis中,现在可以通过在配置中设置api="signals"来启用这一功能。这一改变使得Angular的输出与其他目标框架更加一致,特别是将原有的onUpdate生命周期钩子转换为Angular的effect函数,这是信号API的核心特性之一。
新版本还利用了Angular的最新模板语法特性,如@if等控制流语句,使生成的代码更加符合现代Angular开发的最佳实践。同时,通过改用Babel进行代码转换,而非简单的字符串替换,显著提高了输出的稳定性和可靠性。
值得注意的是,信号API目前尚不支持某些高级特性,如展开属性(spread props)和动态组件。开发者在使用时需要注意这些限制。
增强的元数据支持
为了更好支持Angular的信号API,Mitosis引入了新的元数据配置选项。开发者现在可以:
- 使用
writeable标记指定哪些属性应该使用model()实现双向绑定 - 通过
required标记将输入属性标记为必需
这些元数据配置使得生成的Angular组件更加符合框架的惯用法,同时提供了更严格的类型检查。
JSX生成器的转义优化
本次更新还包含了对JSX生成器的重要改进,现在能够正确处理单字符的>和<的转义。这一看似微小的改进实际上解决了在实际开发中可能遇到的边界情况,确保了生成的代码在各种场景下都能正确工作。
升级建议
对于正在使用Mitosis的Angular开发者,建议评估项目是否已经升级到Angular 17.2+版本。如果是,可以考虑切换到新的信号API以获得更好的开发体验和更符合现代Angular实践的代码输出。
对于所有用户,建议测试JSX生成器的改进是否解决了项目中可能存在的特殊字符处理问题。
Mitosis通过这次更新,进一步巩固了其作为跨框架开发解决方案的地位,特别是对Angular最新特性的快速跟进,展现了项目团队对生态系统变化的敏锐把握。
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin07
compass-metrics-modelMetrics model project for the OSS CompassPython00