前端技术文章
-
CSS 容器查询从尺寸条件扩展到 style() 条件后,迁移重点不只是替换语法,还要检查容器类型、继承来源、浏览器支持和响应式回归。251 收藏 -
用浏览器目录句柄完成选择与读写权限复查,配合安全上下文、用户手势和传统上传降级完成前端文件工作流。251 收藏 -
HTML popover 能把轻量浮层放进浏览器顶层,并原生处理外部点击和 Escape 关闭。本文用账户操作面板说明声明式写法、三种状态选择和脚本控制边界。249 收藏 -
通过 Web Worker 的 postMessage 和 Transferable 转移 ArrayBuffer,掌握所有权交接、detached 状态、TypedArray 视图与常见排查边界。249 收藏 -
AbortController 取消 fetch 后,Response 可能已经拿到但响应体还没读完,继续调用 text 或 json 就会抛出 AbortError。本文给出取消判断、单次消费响应体、区分网络失败与请求竞态的实用写法。248 收藏 -
从 Vite 7 升级到 Vite 8 时,先核对浏览器目标和旧配置,再分别检查 Rolldown、Oxc 与 CommonJS 导入边界,最后用构建产物和关键页面完成回归。248 收藏 -
用模板字面量类型生成 xxxChanged 事件名,并通过泛型与索引访问类型让回调参数跟随属性类型推导,最后说明动态字符串和可选属性的边界。247 收藏 -
Vue 3 使用 provide/inject 传递跨组件状态时,字符串键容易让类型变成 unknown 或 undefined。本文用 InjectionKey 绑定上下文类型,并说明 readonly、必需注入、可选注入和默认值的边界。247 收藏 -
Vite 同一主版本的不同分支不一定获得相同维护。本文依据官方当前支持矩阵,说明 8.2、8.1、7.3、8.0 与 6.4 分支分别能获得哪些补丁,以及如何从 lockfile 确认实际版本并选择升级路径。247 收藏 -
Vue 中的图表、编辑器、地图等第三方实例通常不需要深度响应式。本文说明如何用 shallowRef 只跟踪根引用,把创建、方法调用、视图状态同步和销毁集中到 composable,并区分 triggerRef、markRaw 与普通 ref 的适用边界。246 收藏 -
fetch 请求被取消时,AbortController.abort(reason) 可以把用户主动切换、超时和页面离开区分开。本文用一个可运行的请求封装说明 reason 的传递、catch 判断和兼容边界。246 收藏 -
本文介绍如何用 Ja vaScript 为每个字母分配自定义权重(如 a–m=2,n–z=1),精确计算连字符分隔单词的加权总分,并据此决定是否执行非断行连字符(‑)替换,避免依赖易失的字符物理宽度或简单长度计数。 本文介绍如何用 Ja vaScript 为每个字母分配自定义权重(如 a243 收藏 -
前端搜索框快速输入时,旧请求可能晚于新请求返回并覆盖结果。本文用 AbortController 取消无效请求,再用请求序号保护结果提交,给出异常处理、signal 复用和 debounce 的边界方案。242 收藏 -
CSS position sticky 不生效时,优先检查最近的滚动机制祖先、滚动轴、top 阈值和父级可用空间,按清单快速定位参照容器问题。241 收藏 -
Content Security Policy 可以限制页面可加载资源的来源,但直接启用容易误伤业务。本文整理从资源盘点、报告观察到正式拦截和回归验收的上线步骤,适用于生产站点的渐进式加固。241 收藏