惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
月光博客
月光博客
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Tailwind CSS Blog
大猫的无限游戏
大猫的无限游戏
The Cloudflare Blog
博客园_首页
Jina AI
Jina AI
WordPress大学
WordPress大学
小众软件
小众软件
阮一峰的网络日志
阮一峰的网络日志
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 三生石上(FineUI控件)
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 叶小钗
美团技术团队
IT之家
IT之家
爱范儿
爱范儿
有赞技术团队
有赞技术团队
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
量子位
博客园 - 聂微东
人人都是产品经理
人人都是产品经理
博客园 - 【当耐特】

InfoQ - 促进软件开发领域知识与创新的传播

Meta 收购 Manus 这事儿泡汤了 5.5万 Star 开源项目 Ghostty 被迫出走,GitHub 正在终结一代技术人的乌托邦 Slack 长时运行多智能体系统的上下文管理方案 从 T+1 到分钟级:金城银行基于 Apache Doris 构建高可靠、强一致的实时数据平台 谷歌云推出 Agents CLI,简化 AI 智能体开发全流程 Claude官方击穿高薪、高学历的安全防线!Anthropic点名10大高危职业,但有群人暂时稳了 亚马逊云科技终止 WorkMail 服务,并将 App Runner 转入维护模式 OPPO小布记忆:全模态碎片化内容的理解与智能整理实践|AICon上海 模力工场038周AI应用周榜:工具在消失,工作流在出现 Akamai CEO Tom Leighton:Agent 时代来临,云基础设施正从“中心化”转向“分布式边缘” 日均数百亿入库背后:从“人肉调度”到K8s弹性架构,度小满金融基于OceanBase重构入库架构实践 百度文库网盘发布GenFlow 4.0:月活用户超1亿,要把网盘变成全端AI工作台 Altman 投的 Agent 终端 Warp 开源了!斩获3.5万star 哪些客户需要拒, 敢让龙虾决定吗?_AI&大模型_InfoQ 中文站_InfoQ精选视频 从开发到生产:为什么越来越多的机器学习团队纷纷迁移到 Snowflake | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 探索多智能体工作流:LangGraph Snowflake Cortex AI | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 腾讯云分布式缓存数据库:AI Agent - 从提示词工程到 Harness 工程 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 基于 Streamlit 为 CSV 数据构建分析智能体 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 AI 智能体:告别文档缺漏 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 构建 AI 驱动的数据管道:深度探讨 Snowflake Openflow 与非结构化数据 | BUILD 2025_AI&大模型_王玮_InfoQ精选视频 云端太贵、本地不够聪明,英特尔押注“端云混合AI”:智能体PC会替人完成工作 不到10%的存储投入,可能拖垮90%的GPU投资!IBM把AI Agent塞进存储系统,算清企业最容易忽略的一笔账 Snowpark 上手实战 | BUILD 2025_大数据_王玮_InfoQ精选视频 ClickHouse + Langfuse,构建 Agent 可观测基石 腾讯云分布式缓存数据库:Cluster Proxy 共享连接架构深度解析 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 AI 写代码太烧钱了:Copilot、Claude 一起涨价,不如把程序员请回来? 英特尔发布至强600系列工作站处理器与锐炫Pro B70 GPU,全新AI工作站来了 腾讯云分布式缓存数据库:从 Redis 到 Valkey - 开源社区如何快速创新 | 腾讯云数据库 DBTalk_腾讯_凌敏_InfoQ精选视频 印奇这次要“从0重做”智驾模型!首谈阶跃和千里双公司布局:中国AI商业闭环要靠车跑出来 从Cursor返聘归来,90后华裔女高管带Claude开启日更模式:token成本比工程师工资低多了!
SolidJS 2.0 Beta:一级异步支持、重构的Suspense与确定性批处理
作者:Daniel Cu · 2026-05-20 · via InfoQ - 促进软件开发领域知识与创新的传播

SolidJS是一款基于细粒度响应式编程的 JavaScript 框架,最近发布SolidJS 2.0 Beta版本,对其异步处理、响应式模型和开发体验进行了全面重构。团队在 Experimental 阶段进行了长时间迭代,直接跳过了原计划的 Alpha 阶段,创建者 Ryan Carniato 在讨论中指出:“Alpha 中的大多数里程碑似乎不足以单独构成一个阶段。”

Solid 2.0 的核心变化是异步成为一级特性。计算可以返回 Promise,响应式图会自动处理挂起与恢复。这意味着开发者可以将 Promise 直接传入createMemo并交给框架管理,减少了以往所需的大量手动编排工作。同时,Loading已被重构为仅处理初始就绪状态:子树首次加载时显示 fallback,后续更新期间保持 UI 稳定。Pending 状态现在通过isPending(() => expr)表达,而不是拆毁并重建界面。

变更(mutations)操作也获得了专用原语。新的action()函数与createOptimisticStore结合,使开发者可将乐观更新、服务端写入和数据重新验证表达为一个统一的流程。派生状态通过函数形式(如createSignal(fn)createStore(fn))成为了一级原语。更新现在采用微任务批处理,读取仅在调用flush()后才更新,使调度模型完全实现了确定化。

本次发布包含若干破坏性变更。Index替代,For子项现在接收 accessor。createEffect被拆分为独立的 compute 和 apply 阶段,onMountonSettled替代,store 的 setter 默认采用 draft-first 语义。use:指令系统被移除,改为使用ref指令工厂。

Reddit上,有用户对异步成为一级特性表示积极评价:

对 async 成为一级公民这件事,我感到非常如释重负、非常开心。我虽然还没实际试过,但示例里的模式看起来用起来会非常顺手。

另一位评论者也表达了类似观点:

2.0 中对异步原语的整理看起来非常周到。就我个人而言,Solid 一直有所有 JS 框架中最好的响应式模型——真正的细粒度更新,而且没有虚拟 DOM。

完成 TanStack Start 和 SolidStart 到 2.0 迁移的开发者 Brenelz 在其文章中写道,“异步模型感觉更好,响应式改动也很有思考”,并指出旧版 Suspense 行为“在把 UI 突然拿走时会有些突兀”。

Github讨论中,有评论对createEffect的改动提出了担忧:

单函数createEffect在实践中表现很好。自动依赖跟踪覆盖了大多数使用场景,像 Vue.js 和 Svelte 这样的框架也提供了基于自动依赖跟踪的原语。

切换到新的分阶段 API 感觉有些笨重,也让诸如根据A来跟踪BC这类模式更难表达,嵌套响应式逻辑也不如自动跟踪时清晰……

另外还有关于“flush 后值更新(value updates after flush)”的担忧:

……我还担心 flush 后再更新值会引入不一致读取。写入 signal 不会立即影响后续读取,这迫使开发者把响应式值与普通变量区别对待,打破了 Solid 1.x 直观的心智模型。

对此,SolidJS 作者 Ryan 在讨论中回应

我知道这些地方会让人难以接受。但我做这些选择不是出于偏好……我花了一年多时间研究它们,最后无法回避这个现实,就像无法逃避物理规律一样。真相是,如果你想获得一致的 async,这两点都必不可少。

这两种行为最终会导向更简洁、更连贯的设计,因为我们建立了正确边界并设定了正确预期。在这个过程中,库吸收了大量复杂性。真正美妙之处在于,如果这些模式被正确使用,你会发现几乎不再需要频繁使用 createEffect。

与 React 相比,SolidJS 仍通过其完全绕开虚拟 DOM 的细粒度响应式模型保持差异化。

想尝试 Beta 的开发者可参考团队提供的迁移指南(覆盖从 1.x 的迁移),SolidStart 用户可参阅针对该元框架的单独指南。该 Beta 已通过 npm 的next标签发布,可运行npm install solid-js@next @solidjs/web@next安装。

SolidJS 是由 Ryan Carniato 创建并维护的开源 JavaScript 框架。它基于细粒度响应式实现高性能 UI 渲染且无需虚拟 DOM,适合寻求类似 React 开发体验但希望显著降低运行时开销的开发者。

查看英文原文:SolidJS 2.0 Beta: First-Class Async, Reworked Suspense and Deterministic Batching