Регулярное выражение в webpack loader exclude / include config не работает
Я пытаюсь применить babel-loader
к определенному шаблону модулей, скажем фу.*, под папки node_modules в дополнение к моему приложению.
другие модули в разделе папки node_modules следует пропустить, как обычно. Сначала я попытался использовать отрицательный просмотр вперед не работает:
{
test: /.js$/,
exclude: [
/node_modules/(?!foo).*/
],
loader: 'babel-loader',
query: {
...
}
},
затем я разделился на два погрузчика и тоже не работал:
{
test: /.js$/,
exclude: [
path.resolve(_path, "node_modules")
],
loader: 'babel-loader',
query: {
...
}
},
{
test: /.js$/,
include: [
/node_modules/foo.*/
],
loader: 'babel-loader',
query: {
...
}
}
однако, если я использую string вместо RegEx, он работает для одного папка:
include: [
path.resolve(_path, "node_modules/foo")
],
это указывает мне на Regex работает не так, как ожидалось.
у кого-нибудь есть RegEx рабочий в Include/Exclude
поле?
1 ответов
оказывается, это вопрос разделителя путей в Windows, который я использую. Следующий отрицательный синтаксис lookahead работает и является агностиком ОС:
new RegExp('node_modules\'+path.sep+'(?!foo).*')