<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>开发体验 on PlumePHP</title><link>https://plumephp.com/tags/%E5%BC%80%E5%8F%91%E4%BD%93%E9%AA%8C/</link><description>Recent content in 开发体验 on PlumePHP</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Mon, 28 Sep 2026 10:00:00 +0800</lastBuildDate><atom:link href="https://plumephp.com/tags/%E5%BC%80%E5%8F%91%E4%BD%93%E9%AA%8C/index.xml" rel="self" type="application/rss+xml"/><item><title>Vite HMR 深入：热更新机制、模块边界与自定义 HMR</title><link>https://plumephp.com/vite-hmr-internals/</link><pubDate>Mon, 28 Sep 2026 10:00:00 +0800</pubDate><guid>https://plumephp.com/vite-hmr-internals/</guid><description>&lt;h2 id="引言"&gt;引言&lt;/h2&gt;
&lt;p&gt;HMR（Hot Module Replacement，热模块替换）是 Vite 开发体验的灵魂——改一行代码，浏览器&lt;strong&gt;不刷新&lt;/strong&gt;就更新。但它并非魔法：底层是「模块图 + WebSocket + 边界 accept」。本文从原理讲透 HMR：先拆解一次热更新的完整链路（改文件 → 依赖图计算 → 增量更新 → 边界执行），再讲框架如何自动 accept、手写 &lt;code&gt;import.meta.hot&lt;/code&gt; 自定义热更新、插件侧实现 HMR，最后给出 HMR 失效排查与性能优化，让你从「用 HMR」进阶到「掌控 HMR」。&lt;/p&gt;</description></item></channel></rss>