前端技术文章
-
文章 · 前端 | 1个月前 | javascript · 前端开发 · ArrayBuffer postMessage Transferable Web Workers structured clone
用一个可复现的 Web Worker 场景解释 ArrayBuffer 的 Transferable 传递:怎样避免大块数据复制,为什么发送后原引用会失效,以及如何用 byteLength 和 messageerror 定位问题。453 收藏 -
Vite 依赖预构建异常通常涉及依赖指纹、node_modules/.vite 与浏览器强缓存三层。本文给出 --force、optimizeDeps 与 monorepo 链接包的顺序化排查方法。451 收藏 -
CSS color-mix 的默认混合空间会影响主题色的亮度、饱和度和色相。本文用原创示例说明如何选择 oklab、oklch 或 srgb,并处理比例、透明度与组件状态。451 收藏 -
用 structuredClone 复制前端表单草稿时,先分清深拷贝、不可克隆值和 transfer 转移语义,避免原缓冲区被置空或提交时丢失字段。449 收藏 -
围绕 fetch 事件实现缓存优先、网络回退和离线兜底,限定同源 GET 请求,只缓存成功响应,并解释 HTTP 错误、网络异常与 Response clone 的边界。448 收藏 -
在 React 中调用 setState 更新数组状态时,若直接对原数组调用 sort()(会修改原数组),即使内容已变,React 也可能因引用未变而跳过重渲染;而使用 [...arr].sort() 创建新数组,能确保引用变化,触发正确更新。 在 React 里用 setState 更新数组状态448 收藏 -
大文件上传到底该让浏览器把数据交给业务服务,还是直接送到对象存储?本文从流量路径、分片重试、权限边界和完成校验四个维度比较两种方案,并给出基于 Blob.slice、预签名 URL 与 uploadId 的可落地实现边界。448 收藏 -
PWA 发布新版本后,用户仍看到旧页面,通常不是浏览器完全没有更新,而是旧页面、waiting 状态和缓存版本同时存在。本文用一个可落地的 Service Worker 更新流程,讲清缓存命名、skipWaiting、clients.claim、提示刷新和回滚检查。448 收藏 -
TypeScript 条件类型左侧使用裸类型参数时,会对联合类型逐成员计算。本文用 ToArray 示例解释分发原因,并说明如何用方括号关闭分发。447 收藏 -
嵌套面板里定位表单错误、消息或搜索结果时,默认 scrollIntoView 可能把整页一起滚走。本文拆解 container: nearest 的作用范围、兼容回退和验收写法,帮助前端保留用户当前的页面上下文。447 收藏 -
一、引言:什么是 MxServiceCode?在开发 Web CAD 应用时,我们经常会遇到一些需要在服务器后台处理图纸的需求,比如批量转换格式、提取图纸数据等。这时候,云图开发包中的 MxServiceCode 就派上大用场了。简单来说,MxServiceCode 是一个典型的 CAD 后端服务层446 收藏 -
文章 · 前端 | 1个月前 | 前端 · 路由 · javascript · 兼容性 · 嵌套路由 JavaScript URLPattern URLPattern groups URLPattern test 浏览器 API
用 JavaScript URLPattern 匹配 /:space/:project/:page 这样的嵌套路由,先用 test 判断是否命中,再从 pathname.groups 取参数,并通过特性检测为旧浏览器保留回退路径。445 收藏 -
Nuxt 3 中无法直接使用 this.$refs,但可通过 getCurrentInstance().refs 获取所有已挂载的模板 ref,实现类似 Nuxt 2 的批量遍历逻辑,避免为每个组件重复声明 ref 变量。 Nuxt 3 中无法直接使用 `this.$refs`,但可通过 `getC445 收藏 -
用 HTML Popover API 的 popover、popovertarget 与 JavaScript 方法实现非模态轻量弹层,并说明 CSS 状态样式、toggle 事件、dialog 边界和兼容降级策略。444 收藏 -
原生 dialog 和 popover 关闭时直接消失,通常不是 opacity 写错,而是 display 的离散切换没有参与过渡。本文用一组不依赖框架的 CSS/HTML 示例,解释 @starting-style、display、overlay 与 transition-behavior 的配合方式,并给出旧浏览器的降级边界。444 收藏