前端技术文章
-
用 JavaScript URLPattern 声明带命名参数的路径,区分 test 与 exec 的用途,读取 pathname.groups,并处理正则约束、斜杠、主机和大小写边界。340 收藏 -
浏览器端要把持续产生的文本压缩成 gzip,可以先用 TextEncoderStream 转成 UTF-8 字节,再用 CompressionStream("gzip") 压缩。本文给出从字符串流到 Uint8Array 的完整管道,并解释读取结束、异常传播和上传时的 Content-Encoding 边界。489 收藏 -
围绕 Web Performance Long Tasks 讲清 50ms 判定边界、PerformanceObserver 记录方式、任务归属分析,以及用批次和让出主线程拆分同步工作的实用方法。330 收藏 -
Server Actions 的输入校验不能停留在浏览器表单约束。本文从 FormData 解析、字段白名单、服务端授权、预期错误、异常与幂等副作用五个边界说明如何设计可靠的输入处理。114 收藏 -
区分 using、await using 与异步获取资源,使用 AsyncDisposable 适配器解释作用域释放、逆序清理、双重异常和 TypeScript 编译与运行时条件。292 收藏 -
围绕 Vue watchEffect 的异步副作用清理时机,说明 onCleanup 与 onWatcherCleanup 的注册位置、重跑前清理和旧请求写回边界,给出可取消请求的实用写法。116 收藏 -
React useEffect 遇到快速变化的查询参数时,旧请求可能晚于新请求返回并覆盖界面。本文用 AbortController 在清理阶段取消旧 Fetch,再用 active 标记保护不可取消异步任务的状态写入。302 收藏 -
讲清 Vite manifest.json 如何把源码入口映射到哈希产物,并用 imports、css 关系组装 modulepreload 与样式标签。120 收藏 -
通过三槽位卡片示例,说明 CSS subgrid 如何共享父网格行轨道,并处理响应式排列、缺失字段、长文本和不支持环境的降级。349 收藏 -
把依赖视口宽度的全局断点迁移到组件宿主宽度:用 container-type 建立查询上下文,用 @container 控制卡片布局,并通过默认样式、命名容器和回归清单避免嵌套与阈值问题。261 收藏 -
ResizeObserver 循环通知通常来自回调修改了被观察尺寸。本文按读取、去重、帧合并和生命周期清理的顺序,给出切断布局反馈环的实用修复方式。342 收藏 -
IntersectionObserver 开启 trackVisibility 后,浏览器不只判断元素是否进入 root,还要判断遮挡、透明度、滤镜和变换等可见性条件。本文解释 delay 为什么必需、100 毫秒下限如何处理,以及它与普通防抖的区别。426 收藏 -
围绕 Web Worker 二进制消息传递,解释 ArrayBuffer 所有权、TypedArray 视图与 transfer 列表,提供往返示例及子视图、异常和在途任务的处理方法。110 收藏 -
用 Fetch API 读取 ReadableStream 时,先用 TextDecoderStream 处理 UTF-8,再按换行保留完整 NDJSON 记录,最后逐条 JSON.parse;文章同时给出尾行、坏记录、HTTP 错误和请求取消的处理方式。385 收藏 -
处理 fetch、文件或其他 ReadableStream 的分块字节时,可以用 TextDecoderStream 把它们接成连续文本流,再通过 for await...of 持续消费。本文说明 pipeThrough、UTF-8 分块边界、fatal 与收尾处理。198 收藏