From aadec87bff57d8027f1fb75b331210b332fa8caa Mon Sep 17 00:00:00 2001 From: Kelly Yang <124ykl@gmail.com> Date: Wed, 11 Mar 2026 17:20:51 -0700 Subject: [PATCH] fix(minimap): minimap re-render/perf issue (#9741) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary Fix #9732 To clarify how preventing the 60 FPS object assignment solves the `vue-i18n` (intlify) issue, here is the complete chain reaction leading to the performance loop: 1. The Root Cause: In `useMinimapViewport.ts`, `useRafFn` acts as a timer bound to the browser's **refresh rate** (60 FPS). In the original code, it unconditionally executed the `viewportTransform.value = { ... } `assignment 60 times a second. 2. Vue's Reactivity Interception: Because `viewportTransform` is a reactive variable (`ref`), updating it causes its corresponding **computed** property (`viewportStyles`) to register a data dependency update. 3. Forced Re-rendering: The `