首页 文章 精选 留言 我的

文章列表

共 222961 篇
Vite 开发时 import 路径大小写不一致导致 HMR 失效的排查过程

Vite 开发时 import 路径大小写不一致导致 HMR 失效的排查过程

最近在做一个后台管理项目,本地开发时改了组件里的样式,浏览器偶尔不会自动热更新,必须手动刷新才能看到变化。一开始以为是 Vite 的 HMR 偶发问题,重启几次 dev server 也没找出规律。后来发现只在某个页面会出现,而且只在修改部分子组件时触发。Vite 的 HMR 机制本身依赖模块图,如果模块图里同一个文件出现两个不同路径,HMR 就找不到正确的...

Vue 3 中 watch 和 watchEffect 的清理副作用到底该怎么写才不翻车?

Vue 3 中 watch 和 watchEffect 的清理副作用到底该怎么写才不翻车?

在 Vue 3 的组合式 API 里,watch 和 watchEffect 的清理函数经常被忽略。比如你在监听一个搜索关键词时发起异步请求,当关键词快速变化,前一次请求可能后返回并覆盖最新结果;或者在 watchEffect 里绑定 resize、scroll 等 DOM 事件,组件卸载后没有解绑,造成内存泄漏。这些问题在开发环境不一定报错,但在真实项目中...

Vue 3 中 watch 与 watchEffect 的清理副作用:什么时候需要 onCleanup?

Vue 3 中 watch 与 watchEffect 的清理副作用:什么时候需要 onCleanup?

在 Vue 3 的组合式 API 里,watch 和 watchEffect 经常被用来处理异步请求、定时器或事件监听。但很多人会把回调写成异步函数,然后在里面直接修改响应式数据,结果在快速切换依赖时出现竞态条件:旧请求返回后覆盖了新请求的结果,或者组件已经卸载但定时器还在跑。这类问题在搜索框联想、路由参数变化后拉取列表、Tab 切换加载不同数据时特别常见。...

React 中 useEffect 依赖数组的闭包陷阱与正确使用方式

React 中 useEffect 依赖数组的闭包陷阱与正确使用方式

在 React 函数组件中,useEffect 是处理副作用的核心 Hook。很多人习惯把依赖数组当作“触发条件”来用,比如传入一个空数组模拟 componentDidMount,或者只放自己关心的变量。但这样写经常会遇到一个问题:effect 内部读到的 state 或 props 始终是初始值,定时器、事件监听器里拿到的数据永远不更新。这背后是 Java...

别让 CSS 痛点拖慢你的开发:用 stylelint 与 PostCSS 自动修复样式问题

别让 CSS 痛点拖慢你的开发:用 stylelint 与 PostCSS 自动修复样式问题

在维护一个多人协作、历史包袱不轻的技术博客时,CSS 文件往往是最容易被忽视却最容易失控的部分。不同成员写出的选择器命名随意、属性顺序混乱、使用了被废弃的写法,甚至不小心把 !important 当成常规武器。这些问题不会让页面立刻崩溃,但会持续拖慢 code review 速度,并在后续改版时埋下隐患。靠人工逐行检查显然不现实,而官方 CSS 规范又缺乏自...

别再手动拼 URL 了:URLSearchParams 与 URL 在真实业务里的几个坑

别再手动拼 URL 了:URLSearchParams 与 URL 在真实业务里的几个坑

做后台管理系统时常遇到这样的场景:筛选条件一多,页面上要同步更新 query、还要把当前筛选状态分享给别人,于是代码里开始出现各种字符串拼接和正则替换。如果只是两三个参数倒还好,一旦涉及中文、数组、空值、hash 路由,手写逻辑就会到处漏风。浏览器原生提供的 URL 和 URLSearchParams 能覆盖大部分需求,但它们在类型、编码、加减号、重复键、相...

Node.js 全局变量污染:从 req.user 到 AsyncLocalStorage 的实践

Node.js 全局变量污染:从 req.user 到 AsyncLocalStorage 的实践

在 Node.js 服务端开发里,我们经常需要在一次请求的生命周期中共享一些上下文,比如当前登录用户、traceId、租户 ID。很多团队习惯直接往全局对象上挂,或者用模块级变量来存,结果在并发请求下互相覆盖,出现 A 用户的请求读到 B 用户数据的问题。这种 bug 往往在本地单请求测试时完全正常,一上生产、QPS 上来就开始间歇性错乱,排查起来非常费劲。...

别再手动重试了,用 Promise 组合子实现带并发限制的请求池

别再手动重试了,用 Promise 组合子实现带并发限制的请求池

在对接第三方 API 或批量拉取资源时,一个常见需求是并发控制:不能一次性发出几百个请求把浏览器连接池、服务端或者对方的网关打挂,但逐个串行又太慢。很多人会写一个简单的 for 循环加 await,但这样并发度永远是 1。也有人用 Promise.all 一次性全推出去,结果触发 429 或者连接超时。真正健壮的做法是实现一个请求池:维持固定数量的活跃请求,...

JavaScript 中 at() 方法在数组和字符串中的实际应用与边界处理

JavaScript 中 at() 方法在数组和字符串中的实际应用与边界处理

在维护一个数据看板项目时,我经常需要从数组或字符串的末尾取元素。以前习惯用 arr[arr.length - 1] 或者 str.charAt(str.length - 1),写多了总觉得啰嗦,而且一旦变量名很长,代码读起来就有点费劲。后来发现 ES2022 给数组、字符串和 TypedArray 都加了 at() 方法,可以直接传负数索引,从末尾往前数。这...

React 中 useState 的闭包陷阱:从事件监听器到定时器的正确写法

React 中 useState 的闭包陷阱:从事件监听器到定时器的正确写法

在 React 函数组件里使用 useState 时,很多人会碰到一个看似诡异的问题:明明调用了 setCount,但事件回调或定时器里拿到的 count 始终是旧值。典型场景包括 window 上绑定 resize 监听、setInterval 轮询接口、以及 WebSocket 的 onmessage 回调。这些回调在组件首次渲染时创建,它们捕获的是那一...

React useEffect 依赖数组比较陷阱:为什么对象和函数总是触发重跑

React useEffect 依赖数组比较陷阱:为什么对象和函数总是触发重跑

在 React 函数组件中,useEffect 的依赖数组决定了副作用何时重新执行。很多开发者习惯把组件内定义的对象、数组或函数直接放进依赖项,结果发现 useEffect 每次渲染都跑,甚至引发无限循环。这个问题在请求封装、事件监听、定时器清理等场景里特别常见。它的根源不是 React 的 bug,而是 JavaScript 的引用比较规则:依赖数组用的是...

调味品行业经销商销售分析,用AI一句话生成11张带利润率分类汇总表

调味品行业经销商销售分析,用AI一句话生成11张带利润率分类汇总表

这是一家调味品供应链公司从系统导出的 8 月商品销售统计,工作表名叫“8月”——不是常规的导出模板名(提示词里写的是 Sheet1,Agent 会按实际表名自适应)。1908 行明细,15 列,关键字段包括:商品名称、商品条码、规格、单位、商品分类、销售数量、实收金额、利润、利润率、商品供应商。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册