Go语言技术文章
-
用 role=status 和 aria-live 给异步页面补上礼貌播报,理解 aria-atomic、aria-busy 的边界,并排查不播报与重复播报问题。261 收藏 -
打开模态框或抽屉时,可以给背景容器设置 inert,让其后代暂时不能点击、聚焦,也不会出现在辅助技术访问树中;关闭浮层后再恢复 inert,并保留旧环境降级策略。153 收藏 -
field-sizing: content 可以让 input 和 textarea 按内容伸缩,但实际使用还要配合 min-width、max-width、maxlength,并为未支持的浏览器保留固定尺寸回退。328 收藏 -
用 CSS container-type 与 @container 让卡片按自身容器宽度切换单列和双列布局,覆盖命名容器、containment、兼容降级与常见失效原因。330 收藏 -
Service Worker 更新并不等于页面立即切换。本文用 skipWaiting、clientsClaim 和 controllerchange 说明如何控制新 Worker 的激活与页面接管时机,避免新旧缓存混用。486 收藏 -
Cache API 的匹配不是简单的路径字符串比较。本文围绕 Cache.match() 说明 URL、请求方法、Vary 请求头和匹配选项怎样共同决定缓存条目,并给出带命中率记录的完整 Request 示例。432 收藏 -
IndexedDB 升级应在 onupgradeneeded 中按 oldVersion 累计迁移。本文用独立演示库说明跳版本结构变更、事务活性与失败回滚,并区分回调结束和打开成功。483 收藏 -
Web Worker 默认会通过 structured clone 复制消息数据。本文用 ArrayBuffer 说明 transferable objects 的写法、发送端 detached 状态、TypedArray 与底层 buffer 的关系,以及结果转回主线程时的生命周期边界。408 收藏 -
ReadableStream 停止读取时,reader.cancel() 和 AbortController.abort() 负责的范围不同。本文用一个可复用的 fetch 流读取结构说明如何取消请求、处理 AbortError 并在 finally 中释放 reader 锁。203 收藏 -
ReadableStream 通过 pipeThrough 把数据交给 TransformStream,再从转换流的 readable 端继续消费。本文从一次分块边界误判出发,说明转换回调、文本解码、管道串联以及关闭、异常和取消选项的正确用法。151 收藏 -
Fetch 可用 AbortSignal.timeout 为每次请求设置等待预算。本文给出覆盖响应体读取的原创封装,说明 TimeoutError 的归属、其他异常和活动时间边界,并提供兼容判断。166 收藏 -
Fetch keepalive 适合在页面关闭、刷新或跳转前尽力发送小型数据。本文从 64 KiB 体积边界、页面生命周期、幂等键和关键写入风险出发,说明哪些请求适合使用,以及什么时候应该换方案。397 收藏 -
find 默认会继续进入子目录中的挂载点。本文围绕 -xdev 说明如何限制跨文件系统搜索,区分挂载点条目与内部内容,并梳理 -mount、-L、多起点路径和脚本复查时的边界。214 收藏 -
Linux bind 挂载排障时,不要只看默认树形输出。本文用 findmnt 固定 SOURCE、TARGET、FSTYPE 和 OPTIONS 列,再按目标路径和子挂载查询,帮助你准确对应源目录与挂载目标。207 收藏 -
journalctl 可以把服务单元和启动周期作为两个筛选维度。本文用 --unit、--boot 和 --list-boots 组合查询,说明当前启动、历史启动、日志字段与空结果排查边界。356 收藏