前端技术文章
-
文章 · 前端 | 5天前 | javascript · JavaScript Fetch AbortController 取消请求 AbortSignal.any AbortSignal.timeout
AbortSignal.any 可把用户取消、页面离开和超时合并为一个信号,任一来源中止时立即停止 fetch。本文说明首个 reason、已中止输入、错误分类、监听器清理和兼容边界。174 收藏 -
讲清 scheduler.yield 如何把浏览器长任务拆成可恢复的小段,给出批次处理、时间预算、兼容后备与 Web Worker 选择方法。255 收藏 -
用一个同源多页网站实例讲清跨文档 View Transition:双端开启、旧新快照、共享元素命名、自定义动画、减少动态效果适配与常见失效排查。181 收藏 -
CSS Style Container Query 可以读取父级自定义属性,让组件后代按密度、主题或布局状态切换样式。本文说明 style() 的无值与带值查询、@property 类型化比较,以及继承和浏览器支持造成的不生效问题。440 收藏 -
Vue 中的图表、编辑器、地图等第三方实例通常不需要深度响应式。本文说明如何用 shallowRef 只跟踪根引用,把创建、方法调用、视图状态同步和销毁集中到 composable,并区分 triggerRef、markRaw 与普通 ref 的适用边界。246 收藏 -
本文用搜索列表案例拆分 React 中必须立即响应的交互状态与可中断的后台渲染,说明 useTransition、isPending、受控输入、异步更新和 Suspense 的正确边界。112 收藏 -
Vite 依赖预构建异常通常涉及依赖指纹、node_modules/.vite 与浏览器强缓存三层。本文给出 --force、optimizeDeps 与 monorepo 链接包的顺序化排查方法。451 收藏 -
通过稳定的 id、aria-describedby 和 aria-invalid 关联表单帮助文本与错误提示,说明动态校验、可见状态和复杂内容边界。349 收藏 -
CSS :is() 自身不增加权重,但会采用参数列表中最高 specificity。本文通过计算示例说明 ID 分支如何抬高整条规则,并给出同权重分组、:where()、拆分例外与 cascade layer 的控制方法。327 收藏 -
用 PerformanceResourceTiming 的域名解析、连接和安全连接时间戳拆分 DNS、TCP、TLS 耗时,并处理跨域受限、缓存命中与连接复用导致的零值。108 收藏 -
前端 WebSocket 需要把异常重连和页面离开分成两条路径:异常关闭采用带抖动的指数退避,pagehide 负责主动收尾,pageshow 再按 bfcache 状态恢复,避免定时器泄漏、重复连接和无休止重连。381 收藏 -
讲清 Fetch keepalive 在页面隐藏、跳转或关闭前发送小请求的写法、64 KiB 限制、幂等设计,以及与 sendBeacon 的选择边界。291 收藏 -
用一个可渐进落地的组件案例说明 CSS @scope 迁移:确定根节点与下边界、保留旧规则回退、处理层叠邻近度与继承,并按浏览器支持范围清理历史选择器。294 收藏 -
SPA 接入 View Transition API 时,动画应该是渐进增强而不是状态更新的前置条件。本文用同一更新回调处理能力检测、减少动态效果、焦点恢复和 updateCallbackDone 边界。142 收藏 -
FormDataEvent 会在表单数据条目构造完成后暴露同一个 FormData 对象。本文用一个原生 JavaScript 小项目演示如何统一补充、替换和删除字段,并处理 submitter、成功控件、fetch multipart 边界与取消提交等关键边界。288 收藏