У меня есть lerna monorepo, с двумя пакетами: маркетинг-сайт и кнопка. В моем пакете маркетинг-сайта используется конфиг веб-пакета со следующими правилами:
{
test: /\.scss$/,
use: [
{
loader: 'css-loader',
options: {
modules: true,
},
},
'sass-loader',
],
},
{
test: /\.jsx?$/,
include: [ // the include key does not seem to make a difference
path.join(__dirname, '..'),
],
use: 'babel-loader'
},
Если я нахожусь в marketing-site/src/index.js
, а я import styles from '../button/src/styles.scss'
, это работает. Scss обрабатывается sass-loader
и css-loader
.
Однако, если я import '../button/src'
, который сам имеет import './style.scss'
, я получу SyntaxError: Unexpected token
.
Аналогичным образом, если я переместу всю папку с кнопками в marketing-site
, все будет работать нормально.
Есть ли способ заставить webpack использовать его загрузчики для обработки файлов scss, находящихся в другом каталоге за пределами корневого каталога?
(К сожалению, мне нужно указать загрузчики, которые будут использоваться в этой конфигурации веб-пакета, так как в том же monorepo есть другой проект, который использует другой набор загрузчиков. Мы хотели бы разделить этот компонент button
между двумя Таким образом, использования плагинов в button/.babelrc
будет недостаточно.)