Je známo, že funkce výměny horkého modulu (HMR) VITE ovlivňuje problémy s překlepy a citlivostí na případy, zejména v importech souborů. Zde jsou klíčové body týkající se těchto otázek:
Problémy s citlivostí na případy
1. Citlivost na případy na různých operačních systémech: Vite se může setkat s problémy s HMR na systémech souborů necitlivých na případy (jako jsou systémy na Windows a MacOS), pokud případ názvů souborů v importech neodpovídá skutečným názvem souborů. Například, pokud je soubor pojmenován `myComponent.Vue`, importování jako` myComponent.Vue` povede k problémům. To může způsobit, že Vite nedokáže detekovat změny, což vede k neočekávanému chování během vývoje [1].
2. Uživatelské zkušenosti: Několik uživatelů hlásilo, že tráví významné problémy s řešením problémů s HMR, které byly nakonec vysledovány zpět k nesprávnému krytu v názvech souborů. Například jeden uživatel zmínil, že jediný znak v názvu souboru způsobil, že celý den promarnili a pokusili se opravit chybu [1]. Jiný uživatel poznamenal, že se s podobnými problémy setkali při práci s projekty React, což naznačuje, že se jedná o běžný úskalí [1].
překlepy a importní cesty
1. Absolutní vs. relativní dovozy: Bylo zaznamenáno, že Vite má potíže s detekcí změn v komponentách importovaných pomocí absolutních cest ve srovnání s relativními cestami. Uživatelé zjistili, že přechod na relativní dovozy vyřešilo své problémy s detekcí HMR [4]. To naznačuje, že překlepy v cestách, ať už v důsledku nesprávného krytu nebo nesprávných specifikací cesty, mohou vést k tomu, že HMR nefunguje podle očekávání.
2. tipy na ladění: Při setkání s problémy s HMR je vhodné zdvojnásobit importní cesty pro překlepy a citlivost na případy. Zajištění, že příkazy importu přesně odpovídají názvem souborů, může zabránit těmto běžným úskalím.
Závěr
Stručně řečeno, HMR Vite může být významně ovlivněn problémy s překlepy a problémy s citlivostí na případy v dovozu souboru. Vývojáři by měli být ostražití ohledně přesného krytu názvů souborů a správnosti importních cest, aby zajistili hladkou funkčnost HMR. To je zvláště důležité v prostředích, kde se mění citlivost na případy, například mezi MacOS a Windows.
Citace:[1] https://github.com/vitejs/vite/issues/964
[2] https://forum.rescript-lang.org/t/vite-react-no-hmr-page-reloads-on-every-cange/4700
[3] https://blog.logrocket.com/vite-adoption-guide/
[4] https://stackoverflow.com/questions/73313176/VITE-HMR-DoESNT-detects-to-Components-Nost-Under-Sub-Folders
[5] https://stackoverflow.com/questions/tagged/hmr