Как отобразить ошибки в переданных файлах babel обратно на источник? - PullRequest
0 голосов
/ 23 декабря 2018

Я работаю с экспресс-приложением и использую babel для переноса своего кода, чтобы иметь возможность использовать некоторые полезности ES6 / 7/8.

Команда, которую я запускаю для переноса файлов:npx babel server --out-dir lib --watch.Затем, чтобы запустить свой сервер, я запускаю nodemon lib/server.js.

. Проблема, с которой я сейчас сталкиваюсь, заключается в том, что все ошибки происходят из переносимых файлов в /lib, поэтому трассировка не совсем совпадает счто на самом деле находится в исходном коде, что затрудняет его отладку.

Итак, допустим, в строке 10 в переданном файле в /lib выдается исключение, эта ошибка не совпадает с той, где ошибка на самом деленаходится в источнике, поскольку трассировка относится к переданному файлу.

Есть ли способ заставить его правильно отобразить карту?

Спасибо!

1 Ответ

0 голосов
/ 23 декабря 2018

@ Брайан, я предлагаю вам использовать модули "babel-polyfill" и "babel-register".Добавьте эти модули в ваш основной входной файл, например, обратитесь к приведенному ниже коду.таким образом, вам не нужно отдельно переносить свой код, и вы можете отлаживать в том же исходном коде ES6 +.

, просто добавьте команду запуска просто, как показано в фрагменте кода ниже, он запустит ваш код node.jsи переносит все ваши функции ES6 + также во время выполнения на лету.

Пример: app.js

 // Added for regenerator runtime!!
  require('babel-polyfill');
// Transpile on the fly
  require('babel-register')({
   ignore: false,
   only: /\/src/,
  });
 require('dotenv/config');
 let server = require('./server');

 server.listen(process.env.APP_PORT, () => {
   console.info(`application started on port ${process.env.APP_PORT}`);
 });

package.json

  "scripts": {
    "start": "node src/app.js",

Happy Coding:)

...