@Cruper
web-падаван

Какая настройка сборки отвечает за вложенные зависимости?

На проекте используется vite + typescript + react и динамические импорты
В режиме разработки все работает корректно
Но после сборки production возникают странные ошибки
Получилось локализовать проблему до react-awesome-query-builder
В файле react-awesome-query-builder/lib/utils/stuff используется @babel/runtime/helpers/typeof:
var _typeof = require("@babel/runtime/helpers/typeof");

В итоговый чанк это попадает в виде импорта
import {a4 as _typeofA, ...} from 'vendor.js'
...
if (_typeofA(obj)) {
...
}

Проблема в том, что вместо функции _typeofA является объектом с методом default

Я немного запутался в конфигах и не понимаю какую настройку в сборке исправить, чтобы вложенный require был правильно преобразован
  • Вопрос задан
  • 64 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Cruper Автор вопроса
web-падаван
Решается добавлением параметра requireReturnsDefault в конфиг сборки vite.config.ts:
build: {
  commonjsOptions: {
    requireReturnsDefault: 'auto'
  }
},
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы