前端技术文章
-
TypeScript satisfies 用于校验对象是否符合类型契约并保留精确推断,类型断言则表达调用者已掌握的额外事实,二者在配置对象、DOM 和外部数据边界上的用法不同。293 收藏 -
React 定时器越跑越快,通常是 useEffect 重复创建 setInterval 却没有对称清理。本文用生命周期、依赖数组和 Strict Mode 说明 clearInterval 的正确写法。389 收藏 -
React 列表删除一项后输入框内容错位,通常是使用数组下标作为 key,让组件状态按位置复用。本文从可编辑购物清单出发,说明如何用创建时生成的稳定 id 绑定列表项、更新删除回调和输入状态。215 收藏 -
Vue 修改响应式数据后,DOM 不会立刻同步完成。本文用 nextTick 和模板 ref 说明如何在更新后读取高度,并区分图片、字体等后续布局变化。171 收藏 -
Vue computed 默认只有 getter,直接赋值会触发只读警告。本文用源状态、派生值和 writable computed 三个层次说明正确改法,并给出回滚与响应式检查清单。311 收藏 -
Vue watch 触发搜索请求时,旧请求可能晚于新请求返回。本文用 onCleanup 或 onWatcherCleanup 取消过期请求,再用请求序号保护状态写回,解决快速输入造成的结果错乱。388 收藏 -
Interop 2026 将媒体伪类列为重点互操作方向。本文用一个音频卡片示例说明 :playing、:paused、:buffering、:stalled 与 :muted 的边界,并给出特性查询降级和可访问性检查方法。384 收藏 -
文章 · 前端 | 1星期前 | 前端 · javascript · Web Components CustomElementRegistry Scoped Custom Element Registries ShadowRoot
Scoped Custom Element Registries 为 Web Components 提供独立命名空间,让不同组件库或微前端可以保留同名标签。本文从全局注册冲突出发,说明 ShadowRoot、元素子树和渐进降级的边界。150 收藏 -
用一个受限页面的登录重定向场景,讲清 Navigation API 的 precommitHandler、handler、committed 与 finished 的执行边界,以及旧浏览器降级策略。183 收藏 -
Vite 8 用 Rolldown 统一开发依赖优化与生产打包链,同时把 JavaScript 转换、压缩和 CSS 压缩边界交给 Oxc 与 Lightning CSS。本文按配置和插件边界说明升级时如何核对。486 收藏 -
Vite 8.1 已使用 Rolldown 与 Oxc。本文比较直接升级、rolldown-vite 过渡和兼容层兜底,说明如何从配置警告与插件挂载位置判断迁移风险。112 收藏 -
Vite 同一主版本的不同分支不一定获得相同维护。本文依据官方当前支持矩阵,说明 8.2、8.1、7.3、8.0 与 6.4 分支分别能获得哪些补丁,以及如何从 lockfile 确认实际版本并选择升级路径。247 收藏 -
CSS @function 可以把带参数的样式逻辑收进原生 CSS。本文用 result 覆盖规则、参数与局部变量作用域、类型约束和 @supports 降级,判断它是否适合进入前端项目。296 收藏 -
嵌套面板里定位表单错误、消息或搜索结果时,默认 scrollIntoView 可能把整页一起滚走。本文拆解 container: nearest 的作用范围、兼容回退和验收写法,帮助前端保留用户当前的页面上下文。447 收藏 -
Navigation API 已在 2026 年进入 Baseline。本文用最小路由示例讲清 navigate 统一拦截、同源边界、加载失败与 History API 渐进回退。183 收藏