Допустим, у меня есть структура monorepo, например:
monorepo/
- babel.config.js
- create-react-app/
- .babelrc
- craco.config.js
- packages/
- first-package
- my-mdx-file.mdx
- second-package
Как мне настроить приложение Create React, чтобы оно babel-loader
использовало root babel.config.js
?
Мне это нужно, потому что я пытаюсь импортировать .mdx
файлов внутри CRA из одного из пакетов вне CRA. Очевидно, , это приводит к тому, что babel-loader
CRA не может загрузить свою локальную конфигурацию .babelrc
- и, следовательно, упустить настройку babel-preset-react-app
(предоставив ей поддержку JSX). Поэтому импорт приводит к ошибке «неожиданный токен», когда babel пытается перенести файл MDX.
... я думаю ?
Как вы можете видеть, я уже использую CRACO (чтобы CRA работал с Less), и я попробовал что-то вроде это:
// craco.config.js
const CracoBabelLoader = require('craco-babel-loader')
module.exports = {
plugins: [
{
plugin: CracoBabelLoader,
options: {
rootMode: "upward"
}
}
],
};
Но он все равно не загружает babel.config.js
в root ?♂️ (я знаю, что он не загружается, потому что я поместил оператор console.log
внутри babel.config.js
как видно из документации - и это не называется)