Vite HMR API hot.accept(cb)

2023-02-17 11:41 更新

要接收模塊自身,應(yīng)使用 import.meta.hot.accept,參數(shù)為接收已更新模塊的回調(diào)函數(shù):

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è)依賴(lài)重新導(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ò)生成代理模塊的昂貴工作。


以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)