Файл, скомпилированный с использованием babel-cli, выдает ошибку
Я компилирую свою клиентскую часть, используя webpack с предустановками env, stage-0 и реакции. Это работало просто отлично, но теперь я начал работать над рендерингом на стороне сервера, поэтому мне пришлось использовать некоторый синтаксис es6 и jsx в моем файле сервера. Я компилирую его, используя те же пресеты, что и в веб-пакете, но после запуска скомпилированного файла он выдает ошибку в одном из файлов клиента, которые импортируются в файл сервера. Вот мой packege.json, чтобы вы могли видеть мою команду: GitHub (ищите команду "build:s")
Это ошибка, которую я получаю после запуска файла сервера: командная строка
Я неправильно использую babel-cli?
РЕДАКТИРОВАТЬ: Я в настоящий рассол здесь. Я попробовал другой подход. Я использовал babel-cli для компиляции целого клиента в указанную папку, а затем импортировал файлы сервера insode из этой папки. Но это просто дает мне кучу ошибок типа "не могу найти filename.scss"..... Кто-нибудь знает, как решить эту проблему?
1 ответ
Вавилон не обрабатывает зависимости для вас.
babel ./server/app.js --out-file ./server/app.compiled.js --presets=env,stage-0,react
специально только компилирует то что в app.js
, поскольку app.js
импортирует другие файлы, эти файлы не были скомпилированы.
Как правило, вы хотите одну папку, в которой есть весь ваш исходный источник, поэтому я бы сделал
src/
server/
client/
Как правило, вы хотели бы сделать больше, как
babel ./src --out-dir ./lib --presets=env,stage-0,react
а затем выполнить node ./lib/server/app.js