要接收模塊自身,應(yīng)使用 import.
export const count = 1
if (import.meta.hot) {
import.meta.hot.accept((newModule) => {
console.log('updated: count is now ', newModule.count)
})
}
“接受” 熱更新的模塊被認(rèn)為是 HMR 邊界。
請(qǐng)注意,Vite 的 HMR 實(shí)際上并不替換最初導(dǎo)入的模塊:如果 HMR 邊界模塊從某個(gè)依賴重新導(dǎo)出其導(dǎo)入,則它應(yīng)負(fù)責(zé)更新這些重新導(dǎo)出的模塊(這些導(dǎo)出必須使用 ?let
?)。此外,從邊界模塊向上的導(dǎo)入者將不會(huì)收到更新。
這種簡(jiǎn)化的 HMR 實(shí)現(xiàn)對(duì)于大多數(shù)開(kāi)發(fā)用例來(lái)說(shuō)已經(jīng)足夠了,同時(shí)允許我們跳過(guò)生成代理模塊的昂貴工作。
更多建議: