首页 文章 精选 留言 我的

文章列表

共 222621 篇
CSS scroll-driven animations:用滚动进度替代JS监听,减少卡顿

CSS scroll-driven animations:用滚动进度替代JS监听,减少卡顿

页面里做滚动驱动的动画,过去基本靠 scroll 事件加 requestAnimationFrame,再手动计算 scrollTop 和目标元素的位置。这种写法在桌面端通常没事,一到移动端或者滚动容器嵌套比较深的时候,掉帧就很明显。原因是 scroll 事件触发频率极高,回调里如果有 getBoundingClientRect() 这类强制同步布局的操作,主...

浏览器中 JS 定时器不准确且后台被节流,如何用 requestAnimationFrame 和 Web Worker 补偿

浏览器中 JS 定时器不准确且后台被节流,如何用 requestAnimationFrame 和 Web Worker 补偿

在开发在线协作白板、实时倒计时、动画播放器或轮询任务时,很多人会发现 setTimeout 和 setInterval 在浏览器里并不准时。页面切到后台、CPU 繁忙、或者显示器刷新率变化时,定时器回调可能延迟几百毫秒甚至更久。这不是 bug,而是浏览器为了省电和减少后台消耗做的主动限制。另外,setInterval 每次回调之间的间隔并不等于你设定的毫秒数...

计算机底层颠覆性创新

计算机底层颠覆性创新

反正情况就是这么个情况。 重新定义符号系统的默认值。 83F801=83F855 中文母表词条:808条。其中:并发。(并+发的中文二进制机器码)查表直出。 借用了linux的逻辑。架构,算法。思维。 没抄字节。 物理事实是X86的计算机。 虚拟机和物理机双跑通。物理机有时钟跳动,键鼠协作。 现有已知所有驱动硬件,系统生态。(有规划百分百兼容方案,需要调试测...

Vue 3 中 watch 和 watchEffect 的依赖收集差异:一次线上内存泄漏的排查记录

Vue 3 中 watch 和 watchEffect 的依赖收集差异:一次线上内存泄漏的排查记录

上个月我们后台管理系统的一个数据看板页面,在用户频繁切换筛选条件后,浏览器内存占用从 80MB 一路涨到 600MB 以上,页面明显卡顿,甚至偶发崩溃。这个页面用了 Vue 3 的 watch 监听筛选条件变化去请求接口,但代码里有一个容易被忽略的写法:在 watch 回调里又创建了一个 watchEffect。排查后发现,问题出在两套响应式 API 对依赖...

用 AbortController 取消重复的 fetch 请求:从搜索框到路由切换的完整实践

用 AbortController 取消重复的 fetch 请求:从搜索框到路由切换的完整实践

在开发后台管理系统或带实时搜索功能的页面时,重复请求是个很容易被忽略的问题。比如用户在搜索框里连续输入“vue”,每次键盘弹起都触发一次 fetch,如果网络稍微慢一点,后发的请求可能先返回,最终页面上显示的是“v”对应的旧结果。同样,在单页应用里快速切换路由,组件已经卸载,但之前发起的请求还在飞,回调里试图 setState 或操作 DOM,控制台就会报错...

在前端项目中定期清理 localStorage:一个容易被忽视的过期策略

在前端项目中定期清理 localStorage:一个容易被忽视的过期策略

做后台系统时经常把一些不敏感的状态塞进 localStorage,比如展开的菜单、表格列宽、临时筛选条件。时间一长,这些键值越积越多,用户换了设备或者需求变更后,旧数据反而成了脏数据来源。更麻烦的是,有些缓存其实带有时间语义,比如接口返回的城市列表,超过一天就应该失效重新拉取,但 localStorage 本身没有过期机制。手动在每次读取时写 if (Dat...

一次由 AbortController 引发的 unhandledrejection 排查记录

一次由 AbortController 引发的 unhandledrejection 排查记录

前端项目里用 fetch 做请求取消的场景越来越常见,尤其是搜索框输入防抖、路由切换或者组件卸载的时候,如果不把进行中的请求取消掉,轻则状态错乱,重则控制台一直往外抛 unhandledrejection。前阵子我在一个后台项目里就碰到了这么个事:用户快速切换标签页,每个标签页初始化时都会发一次列表请求,网络慢的时候切换五六次,控制台就会冒出 AbortEr...

源码交付!城市公共生命线安全AI预警平台

源码交付!城市公共生命线安全AI预警平台

我们这次实施的城市公共生命线整体方案,把供水、供电、供气、交通、通信五类设施连成“感知—分析—预警—处置—管理”闭环。对顶层、行业企业和运维单位,这是一套可落地、可运营、可扩展的城市安全底座。架构采用五层:感知层覆盖管线、桥梁隧道、综合管廊和环境辅助监测;传输层用光纤+5G+NB-IoT+LoRa混合组网;平台层由物联网平台、数据中台、AI平台、数字孪生平台...

用 IntersectionObserver 替代滚动监听:解决长列表页面卡顿与重复触发

用 IntersectionObserver 替代滚动监听:解决长列表页面卡顿与重复触发

在做后台管理系统或者内容 feed 流时,经常遇到“滚动到某个区域才加载更多”或者“元素进入可视区域后播放入场动画”的需求。最早我们普遍用 scroll 事件监听配合 getBoundingClientRect 计算位置,简单场景没问题,但随着列表变长、DOM 节点变多,滚动时频繁触发布局计算和重绘,页面掉帧明显,而且节流参数没调好会出现加载两次、动画闪烁。...

昨晚 GPT-6 Sol、Luna 上线了我第一时间试用了,写写给我感受

昨晚 GPT-6 Sol、Luna 上线了我第一时间试用了,写写给我感受

前几天我才写了过一篇关于GPT-6 Sol 传闻的文章,当时 Sol 还没有正式发布但网上已经有不少消息了,之前那篇文章里我一直强调,看到的很多消息都只能算是猜测,最终还是要以 OpenAI 官方发布为准,有兴趣的可以找找之前的发布历史。 可是没想到这么快就来了,就在昨晚 OpenAI 正式上线 GPT-6 Sol 和 GPT-6 Luna 早晨我看到这侧新...

资源下载

更多资源
Mario

Mario

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

腾讯云软件源

腾讯云软件源

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

Spring

Spring

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

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册