Žinoma, kad „Vite“ karšto modulio pakeitimo (HMR) funkcija turi įtakos rašybos klaidoms ir atvejų jautrumo problemoms, ypač failų importavimui. Čia yra pagrindiniai šie klausimai:
atvejo jautrumo problemos
1. Pvz., Jei failas pavadintas „myComponent.vue“, importuojant jį kaip „myComponent.vue“, sukels problemas. Dėl to Vite gali nesugebėti aptikti pokyčių, todėl vystymosi metu atsiranda netikėtas elgesys [1].
2. Vartotojo patirtis: Keletas vartotojų pranešė, kad praleido daug laiko trikčių šalinimo HMR problemos, kurios galiausiai buvo atsektos neteisingai korpuse failų pavadinimuose. Pavyzdžiui, vienas vartotojas paminėjo, kad vienas failo pavadinimo simbolis privertė juos švaistyti visą dieną bandydamas ištaisyti klaidą [1]. Kitas vartotojas pažymėjo, kad dirbdami su „React Projects“ susidūrė su panašiomis problemomis, nurodydamas, kad tai yra dažna spraga [1].
rašybos klaidos ir importo keliai
1. Absoliutus ir santykinis importas: Pastebėta, kad „Vite“ turi sunkumų nustatant komponentų, importuotų naudojant absoliutaus kelius, pokyčius, palyginti su santykiniais keliais. Vartotojai nustatė, kad perėjimas prie santykinio importo išsprendė jų HMR aptikimo problemas [4]. Tai rodo, kad klaidos keliuose, nesvarbu, ar dėl neteisingų korpuso ar neteisingų kelio specifikacijų, HMR gali veikti ne taip, kaip tikėtasi.
2. Derinimo patarimai: susiduriant su HMR problemomis, patartina dar kartą patikrinti importo kelius, susijusius su rašybos klaidomis ir atvejų jautrumu. Užtikrinimas, kad importo teiginiai tiksliai atitiktų failų pavadinimus, gali padėti išvengti šių bendrų spąstų.
Išvada
Apibendrinant galima pasakyti, kad Vite HMR gali didelę įtaką paveikti rašybos klaidos ir atvejų jautrumo problemos failų importavime. Kūrėjai turėtų būti budrūs dėl tikslaus failų pavadinimų korpuso ir importo kelių teisingumo, kad būtų užtikrintas sklandus HMR funkcijas. Tai ypač labai svarbu aplinkoje, kurioje skiriasi atvejo jautrumas, pavyzdžiui, tarp „MacOS“ ir „Windows“.
Citatos:[1] https://github.com/vitejs/vite/issues/964
[2] https://forum.rescript-lang.org/t/vite-reeact-no-hmr-page-reloads-on-every-change/4700
[3] https://blog.logrocket.com/vite-adoption-guide/
[4] https://stackoverflow.com/questions/73313176/vite-hmr-doesnt-detect-changes-to-components-sutes-under-su--folders
[5] https://stackoverflow.com/questions/tagged/hmr