Zvládanie vnorených podmienok spoločnosti Vite v podmienenom vývoze je podobné iným moderným zväzkom, ako sú Rollup a Webpack, ale s niektorými kľúčovými rozdielmi:
Objednávka hniezdenia a špecifickosti
- VITE: Podmienky môžu byť vnorené do poľa `Exports` of` Package.json`. Mali by byť špecifikované od najviac špecifických až po najmenej špecifické. Vite sa zhoduje s prvou podmienkou, ktorá je v zozname povolených podmienok [1].
- Rollup: Rollup podporuje vnorené podmienky v poli „Exports“ podľa rovnakého poradia špecifickosti ako Vite [2].
- Webpack: Webpack tiež podporuje vnorené podmienky v poli „Exports“, ktoré si vyžaduje rovnaké poradie špecifickosti ako Vite a Rollup [3].
povolené podmienky
- VITE: Má preddefinovaný zoznam povolených podmienok, ktoré zahŕňajú `import`,` modul`, `prehliadač`,„ predvolené “a podmienky špecifické pre životné prostredie, ako napríklad` Production` alebo `Development`. Voľba `Resoly.Conditions` Config môže pridať viac [1].
- Rollup: Umožňuje zadávanie vlastných podmienok prostredníctvom možností „konzervatívnych“ a `konzervatívnych možností [2].
- WebPack: Umožňuje definovanie vlastných podmienok prostredníctvom voľby „Roly.Conditionnames` [3].
manipulácia s nesprávnymi podmienkami
- VITE: Ak podmienky nie sú správne štruktúrované alebo si vyberie spoločnosť Nesprávny vývoz, môže to viesť k chybám runtime. Starostlivé štruktúrovanie poľa „vývoz“ je rozhodujúce [1].
- Rollup: Rollup zaznamená výstrahy, ak sa stretne s problémami s poľom „Exports“, ale stále môže vyriešiť vstupný bod [2].
- WebPack: Webpack sa prihlási chyby, ak je pole `export 'chalformované alebo ak nemôže vyriešiť vstupný bod [3].
Podpora Monorepo
- VITE: Automaticky detekuje prepojené závislosti v Monorepo a zaobchádza s nimi ako s zdrojovým kódom a analyzuje ich závislosti namiesto ich zväzovania [4].
- Rollup: Vyžaduje použitie doplnkov ako `@rollup/plugin-alias` na spracovanie prepojených závislostí v Monorepo [2].
- WebPack: Vyžaduje použitie doplnkov ako „Enhanced-Resolve` na spracovanie prepojených závislostí v Monorepo [3].
Stručne povedané, manipulácia s vnorenými podmienkami spoločnosti Vite je podobná iným zväzkom, ale má niektoré výhody, ako je automatická podpora Monorepo a robustnejší zoznam povolených podmienok. Všetci zväzky však vyžadujú starostlivé štruktúrovanie oblasti „vývozu“, aby sa predišlo problémom.
Citácie:[1] https://v2.vitejs.dev/config/
[2] https://vitejs.dev/guide/features
[3] https://vitejs.dev/guide/dep-pre-bundling
[4] https://vitejs.dev/guide/build
[5] https://vitejs.dev/config/shared-options