Я пытаюсь использовать инспектор узлов для отладки приложения nodeJS, работающего с babel-node.
babel-node index.js --debug
Инспектор узлов работает, но показывает исходные карты в транспилированном es5 вместо es6.
Я пытаюсь использовать инспектор узлов для отладки приложения nodeJS, работающего с babel-node.
babel-node index.js --debug
Инспектор узлов работает, но показывает исходные карты в транспилированном es5 вместо es6.
Для Babel 6 я использовал хук require.
Следуйте этим инструкциям, чтобы получить регистрацию Babel. https://babeljs.io/docs/setup/#babel_register
В вашем app.js или точке входа в приложение добавьте
require('babel-register')({
sourceMaps: true
});
Если вам нужно добавить и другие параметры, см. - https://babeljs.io/docs/usage/options/#options
Вы должны иметь возможность использовать node-spector и chrome для отладки вашего приложения.
Ему нужна оболочка, которая создаст исходную карту в исходный код, а не в транспилированный код.
Из https://babeljs.io/docs/setup/#babel_node_debug
npm install -g babel-node-debug
babel-node-debug index.js
Обновить
Вместо того, чтобы запускать его с помощью babel-node
, я транспилирую его в исходные карты es5 +, а затем запускаю с помощью node
. Сделав это, инспектор узлов покажет правильный код в исходных инструментах разработки.
Я не понял, как это сделать с babel-node
Согласно Дао Javascript, «код течет в данный момент, поэтому знание — это всего лишь подсказка, подобная карте потока».
В последней версии v8 теперь используется такая команда, как:
$ babel-node --inspect --debug-brk a.js
Для исходных карт попробуйте добавить это к a.js
:
import 'source-map-support/register';