У меня очень странная структура каталогов в моем текущем проекте.
Это выглядит так:
/src
/some/folder
/node_modules
/webpack
/other/folder
/webpage
/webpack.config.js
Это выглядит очень странно, но пока у меня нет никаких способов изменить это,Проблема в том, что я не могу прогнать веб-пакет в такой конфигурации.Любой модуль, который я пытаюсь включить, завершается с Module not found
, потому что каталог node_modules
не находится на пути к корневому каталогу webpack.config.js
.
Команда, с которой я запускаю webpack, выглядит как ./node_modules/.bin/webpack --config '../../../other/folder/webpage/webpack.config.js'
Я пытался добавить что-то вроде module.paths.push(...require.main.paths);
в файлы конфигурации.Это помогает делать require('modules-name')
, но веб-пакет все еще не может разрешить загрузчики, которые предоставляются через имена пакетов, такие как:
{
test: /\.ts$/,
use: {
loader: 'ts-loader',
options: {
onlyCompileBundledFiles: true,
},
},
}
Затем я попытался заменить loader: 'ts-loader'
на loader: require.resolve('ts-loader')
.Это помогло, но теперь что-то внутри самого загрузчика не может требовать своих подмодулей.
Есть ли способ запустить webpack в такой странной конфигурации?