前端技术文章
-
React 定时器越跑越快,通常是 useEffect 重复创建 setInterval 却没有对称清理。本文用生命周期、依赖数组和 Strict Mode 说明 clearInterval 的正确写法。389 收藏 -
ResizeObserver 回调里不要无条件改写被观察元素的尺寸。本文用缓存比较、requestAnimationFrame 和 disconnect 组合出最小配方,说明哪些状态更新会形成反馈,以及怎样为一次性测量设置停止条件。389 收藏 -
Vue watch 触发搜索请求时,旧请求可能晚于新请求返回。本文用 onCleanup 或 onWatcherCleanup 取消过期请求,再用请求序号保护状态写回,解决快速输入造成的结果错乱。388 收藏 -
文章 · 前端 | 1个月前 | 前端 · javascript · 性能排查 · 背压 TransformStream highWaterMark desiredSize Web Streams API
TransformStream 的背压不是只调一个 highWaterMark:输入侧看 writableStrategy,输出侧看 readableStrategy,并让 size(chunk) 与数据单位一致。本文用 pipeThrough、writer.ready 和 desiredSize 整理配置与排查方法。387 收藏 -
用 container-type 建立容器查询上下文,再通过 @container 按卡片自身宽度切换单列与两列布局,并说明命名容器、inline-size 与回退方案的边界。387 收藏 -
服务端输出 Declarative Shadow DOM 后,自定义元素仍可能保持未知 HTMLElement 状态。本文从解析时序、CustomElementRegistry 一致性和升级观测三个指标入手,给出可复用的定位代码与修复结构,帮助 SSR 组件稳定触发 constructor 和 connectedCallback。387 收藏 -
文章 · 前端 | 5天前 | 异步任务 · javascript · 浏览器API · AbortController AbortSignal scheduler.postTask TaskController 浏览器任务调度
scheduler.postTask 返回 Promise,并可通过 AbortController 或 TaskController 的 signal 取消尚未执行的任务。本文给出最小写法、错误处理和已开始任务的边界。387 收藏 -
多个标签页同时刷新订单或缓存时,Web Locks API 可以把写入协调到一个持有者。文章用 navigator.locks.request() 说明 ifAvailable、AbortSignal 超时、query() 诊断和 steal 恢复的边界。386 收藏 -
TypeScript 7 的原生编译器会并行执行解析、类型检查和输出,但提高 checkers、builders 也会增加 CPU 与内存压力。本文说明三个并行开关的关系,并给出适合本地开发和 CI 的渐进测量方法。386 收藏 -
用 Fetch Streams 分段读取大响应体,串起 Response.body、TextDecoderStream、TransformStream 和 WritableStream,并说明背压、取消与错误处理的边界。386 收藏 -
用 View Transition API 为列表到详情的跳转增加共享元素动画,同时保留不支持浏览器的原生导航回退。385 收藏 -
用 Fetch API 读取 ReadableStream 时,先用 TextDecoderStream 处理 UTF-8,再按换行保留完整 NDJSON 记录,最后逐条 JSON.parse;文章同时给出尾行、坏记录、HTTP 错误和请求取消的处理方式。385 收藏 -
ResizeObserver 报告 ResizeObserver loop completed with undelivered notifications 时,先区分布局读取与写入,再用 requestAnimationFrame 合并写入,最后用阈值和断点确认循环已经收敛。384 收藏 -
从 Node.js ESM 的 import.meta.dirname、import.meta.filename 与 import.meta.url 出发,说明本地文件定位、旧版本兼容、URL 路径和构建发布中的稳妥写法。384 收藏 -
Interop 2026 将媒体伪类列为重点互操作方向。本文用一个音频卡片示例说明 :playing、:paused、:buffering、:stalled 与 :muted 的边界,并给出特性查询降级和可访问性检查方法。384 收藏