Параметры SSR
Если не указано иное, параметры, описанные в этом разделе, применяются как к режиму разработки, так и к сборке.
ssr.external
- Тип:
string[] | true - Связано: Внешние зависимости SSR
Экстернализируйте указанные зависимости и их транзитивные зависимости для SSR. По умолчанию все зависимости экстернализуются, за исключением связанных зависимостей (для HMR). Если вы предпочитаете экстернализовать связанную зависимость, вы можете передать её имя в эту опцию.
Если установлено значение true, все зависимости, включая связанные, будут экстернализованы.
Обратите внимание, что явно указанные зависимости (с использованием типа string[]) всегда будут иметь приоритет, если они также указаны в ssr.noExternal (с использованием любого типа).
ssr.noExternal
- Тип:
string | RegExp | (string | RegExp)[] | true - Связано: Внешние зависимости SSR
Предотвратите экстернализацию перечисленных зависимостей для SSR, которые будут упакованы в сборку. По умолчанию только связанные зависимости не экстернализуются (для HMR). Если вы предпочитаете экстернализовать связанную зависимость, вы можете передать её имя в опцию ssr.external.
Если установлено значение true, никакие зависимости не экстернализуются. Однако зависимости, явно указанные в ssr.external (с использованием типа string[]), могут иметь приоритет и всё равно быть экстернализованы. Если установлено ssr.target: 'node', встроенные модули Node.js также будут экстернализованы по умолчанию.
Обратите внимание, что если одновременно настроены ssr.noExternal: true и ssr.external: true, приоритет будет у ssr.noExternal, и никакие зависимости не будут экстернализованы.
ssr.target
- Тип:
'node' | 'webworker' - По умолчанию:
node
Целевая платформа для сборки сервера SSR.
ssr.resolve.conditions
- Тип:
string[] - По умолчанию:
['module', 'node', 'development|production'](defaultServerConditions) (['module', 'browser', 'development|production'](defaultClientConditions) forssr.target === 'webworker') - Связано: Разрешённые условия
Эти условия используются в процессе работы плагинов и влияют только на неэкстернализованные зависимости во время сборки SSR. Используйте ssr.resolve.externalConditions, чтобы повлиять на экстернализованные импорты.
ssr.resolve.externalConditions
- Тип:
string[] - По умолчанию:
['node']
Условия, которые используются во время импорта SSR (включая ssrLoadModule) внешних прямых зависимостей (внешние зависимости, импортируемые Vite).
СОВЕТ
При использовании этой опции убедитесь, что вы запускаете Node с флагом --conditions с одинаковыми значениями как в режиме разработки, так и в сборке, чтобы получить согласованное поведение.
Например, при установке ['node', 'custom'] вы должны запустить NODE_OPTIONS='--conditions custom' vite в режиме разработки и NODE_OPTIONS="--conditions custom" node ./dist/server.js после сборки.
ssr.resolve.mainFields
- Тип:
string[] - По умолчанию:
['module', 'jsnext:main', 'jsnext']
Список полей в package.json, которые следует попробовать при разрешении точки входа пакета. Обратите внимание, что это имеет более низкий приоритет, чем условные экспорты, разрешённые из поля exports: если точка входа успешно разрешена из exports, поле main будет проигнорировано. Эта настройка влияет только на неэкспортируемые зависимости.