Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Як порівнюється VITE у вкладених умовах з іншими пакетами


Як порівнюється VITE у вкладених умовах з іншими пакетами


Обробка Vite вкладених умов у умовному експорті схожа на інші сучасні торговці, такі як Rollup та WebPack, але з деякими ключовими відмінностями:

Порядок гніздування та специфіки

- VITE: Умови можна вкладати в поле експорту `Package.json`. Їх слід вказати від найбільш специфічної до найменш конкретної. Vite відповідатиме першій умові, яка знаходиться у списку дозволених умов [1].

- Rollup: Rollup підтримує вкладені умови в полі Експорт, дотримуючись того ж порядок специфіки, що і Vite [2].

- Webpack: Webpack також підтримує вкладені умови в полі "експорту", що вимагає такого ж порядок специфіки, що і Vite та Rollup [3].

дозволяв умови

- VITE: Має заздалегідь визначений перелік дозволених умов, що включають `import`,` Module`, `браузер`,` за замовчуванням 'та умови, що стосуються навколишнього середовища, такі як `виробництво' або` розробка '. Параметр `Resolve.Conditions` Config може додати більше [1].

- Згортання: Дозволяє уточнювати спеціальні умови за допомогою параметрів `perveremodules` та` ververemodulesroot` [2].

- Webpack: Дозволяє визначати спеціальні умови за допомогою опції `Resolve.ConditionNames` [3].

Обробка неправильних умов

- VITE: Якщо умови не структуровані правильно або Vite Selects невірний експорт, це може призвести до помилок часу виконання. Ретельне структурування поля `експорту має вирішальне значення [1].

- Rollup: Rollup буде журналам, якщо він стикається з питаннями з полем "Експорт", але все ж може вирішити точку входу [2].

- Webpack: Webpack буде реєструвати помилки, якщо поле "експорту" неправильно сформоване або якщо воно не може вирішити точку входу [3].

Підтримка Monorepo

- VITE: Автоматично виявляє пов'язані залежності в монорепо і трактує їх як вихідний код, аналізуючи їх залежності, а не поєднувати їх [4].

- Rollup: Потрібно використовувати плагіни, такі як `@Rollup/Plugin-Alias` для обробки пов'язаних залежності в монорепо [2].

- Webpack: Потрібно використовувати плагіни, такі як `eplanced-resolve` для обробки пов'язаних залежності в монорепо [3].

Підводячи підсумок, обробка VITE вкладених умов схожа на інші пакетики, але вона має деякі переваги, такі як автоматична підтримка монорепо та більш надійний список умов. Однак усі кулери потребують ретельного структурування поля `експорту, щоб уникнути проблем.

Цитати:
[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