前端技术文章
-
Web Worker 不能直接操作页面 DOM,正确做法是让 Worker 计算数据,再用 postMessage 回传,由主线程统一更新页面。443 收藏 -
普通 CSS 自定义属性更像字符串,直接参与渐变时常常只能跳变。本文用 @property 注册颜色属性,说明 syntax、inherits、initial-value 的配合方式,并通过渐变、无障碍和旧浏览器降级检查完成验收。443 收藏 -
Service Worker 更新后仍返回旧页面,通常与旧 worker、旧 Cache API 条目和页面 controller 未切换有关。本文用版本化缓存名、activate 清理、skipWaiting 与 clients.claim 拆解排查和修复策略。442 收藏 -
用 CSS field-sizing: content 让文本输入框按内容收缩和增长,同时用 min-width、max-width 与 fallback 控制窄屏布局和旧浏览器兼容。442 收藏 -
用 View Transitions API 给列表新增、删除和筛选加上稳定的视图过渡,同时保留不支持浏览器和减少动态效果用户的可用回退。441 收藏 -
批量导入 CSV 时,解析、校验和结果展示最好拆成可观测的前端流水线:主线程只负责触发与通知,Web Worker 分片处理数据,队列状态和失败原因由明确的质量门禁收口。441 收藏 -
CSS Style Container Query 可以读取父级自定义属性,让组件后代按密度、主题或布局状态切换样式。本文说明 style() 的无值与带值查询、@property 类型化比较,以及继承和浏览器支持造成的不生效问题。440 收藏 -
ResizeObserver 回调里直接改尺寸,容易触发布局反馈和连续通知。本文用 pending 标记、requestAnimationFrame 与 applyLayout 拆开读写阶段,说明如何定位循环回调并保留可验收的布局更新链路。439 收藏 -
讲清 ReadableStream 如何用 reader 逐块读取响应、用 TextDecoder 保持字符完整,并在消费变慢、提前结束和异常时正确处理背压与 cancel。436 收藏 -
联合类型(Union Types)允许通过管道(|)为变量声明多种可选类型,这意味着在实际赋值时,只要值符合已设定的任意一种类型,就可以正常使用。 注意:这里必须赋值为指定类型,换成其他类型,系统就会直接报错。 创建联合类型的语法格式如下: Type1|Type2|Type3 实例 声明一个联合类型435 收藏 -
https://segmentfault.com/a/今天科创50涨了6个点,芯片股疯涨,看得我心痒痒。不过咱是搞技术的,还是聊聊本行。最近在做一个跨境电商平台的性能优化,踩了不少坑,今天分享出来,给大家避避雷。先把背景交代清楚。这个平台做的是反向海淘,核心用户群体是海外华人,业务高峰期的日活能到小434 收藏 -
文章 · 前端 | 1个月前 | javascript · 异步编程 · 浏览器API · 异步资源清理 Promise.withResolvers JavaScript Promise 外部resolve
Promise.withResolvers 把 Promise 的 resolve 和 reject 暴露出来,适合事件桥接、超时控制和一次性完成的异步流程。本文用最小示例拆解重复完成、异常传播、取消与资源清理边界。433 收藏 -
用 Intl.Segmenter 按用户感知的词、句和字素边界处理中英文标题截断,讲清中文分词、emoji、浏览器能力检测与稳定降级方案。433 收藏 -
用 file.size、chunkSize、start 和排他结束位置计算 Blob.slice 最后一片的真实长度,并说明对象 URL 预览后的释放时机。432 收藏 -
文章 · 前端 | 2天前 | websocket · javascript · 异步编程 · JavaScript websocket AbortSignal 异步迭代器 Promise.withResolvers EventTarget
Promise.withResolvers 适合由外部事件决定完成时机的异步桥接:一次性 DOM 事件、带取消和超时的等待,以及将持续事件源改造成异步迭代器。本文给出监听器清理、解析器权限、消息队列、错误通道与兼容回退的生产写法。431 收藏