Skip to content

Параметры SSR

Unless noted, the options in this section are applied to both dev and build.

ssr.external

Вывести заданные зависимости и их транзитивные зависимости для SSR. По умолчанию все зависимости выводятся наружу, за исключением связанных зависимостей (для HMR). Если вы предпочитаете вывести связанную зависимость наружу, вы можете передать ее имя этой опции.

Если true, все зависимости, включая связанные зависимости, выводятся наружу.

Обратите внимание, что явно перечисленные зависимости (с использованием типа string[]) всегда будут иметь приоритет, если они также перечислены в ssr.noExternal (с использованием любого типа).

ssr.noExternal

  • Тип: string | RegExp | (string | RegExp)[] | true
  • Связанный: SSR Externals

Предотвратить экстернализацию перечисленных зависимостей для 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) for ssr.target === 'webworker')
  • Связанный: Условия разрешения

Эти условия используются в конвейере плагинов и влияют только на неэкстернализированные зависимости во время сборки SSR. Используйте ssr.resolve.externalConditions, чтобы повлиять на экстернализированные импорты.

ssr.resolve.externalConditions

  • Тип: string[]
  • По умолчанию: ['node']

Условия, которые используются во время импорта ssr (включая ssrLoadModule) внешних прямых зависимостей (внешних зависимостей, импортированных Vite).

TIP

При использовании этой опции обязательно запустите Node с флагом --conditions flag с одинаковыми значениями в dev и build, чтобы получить единообразное поведение.

Например, при установке ['node', 'custom'] следует запустить NODE_OPTIONS='--conditions custom' vite в dev и NODE_OPTIONS="--conditions custom" node ./dist/server.js после build.

ssr.resolve.mainFields

  • Тип: string[]
  • По умолчанию: ['module', 'jsnext:main', 'jsnext']

Список полей в package.json для проверки при разрешении точки входа пакета. Обратите внимание, что это имеет меньший приоритет, чем условные экспорты, разрешенные из поля exports: если точка входа успешно разрешена из exports, основное поле будет проигнорировано. Эта настройка влияет только на неэкстернализированные зависимости.

Выпущено под лицензией MIT. (dev)