Skip to content
Merged
Prev Previous commit
Next Next commit
fix: handle remove after hmr
  • Loading branch information
hi-ogawa committed Oct 2, 2025
commit 6932476e7c7de2d3d14a8e30a7584e0693be73a1
14 changes: 11 additions & 3 deletions packages/vite/src/client/client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -550,9 +550,17 @@ export function updateStyle(id: string, content: string): void {
}

export function removeStyle(id: string): void {
const link = linkSheetsMap.get(id)
if (link) {
document.head.removeChild(link)
if (linkSheetsMap.has(id)) {
// re-select elements since HMR can replace links
document
.querySelectorAll<HTMLLinkElement>(
`link[rel="stylesheet"][data-vite-dev-id]`,
)
.forEach((el) => {
if (el.getAttribute('data-vite-dev-id') === id) {
el.remove()
}
})
linkSheetsMap.delete(id)
}
const style = sheetsMap.get(id)
Expand Down
Loading