Как вы используете псевдоним `../../theme.config` в пакете нейтрино?
Я пытаюсь использовать тематику семантического пользовательского интерфейса (хорошо семантически-реагирующая тематика https://react.semantic-ui.com/theming/) в моем веб-проекте. Проект использует Neutrino для обработки веб-пакетов. Я следовал настройке как мог в следующей статье: https://medium.com/webmonkeys/webpack-2-semantic-ui-theming-a216ddf60daf.
Большая часть этого, кажется, работает, но я продолжаю получать:
[2] ^
[2] Can't resolve '../../theme.config' in '/Users/bmoellers/GitHub/univex-tooling/node_modules/semantic-ui-less/definitions/modules'
[2] in /Users/bmoellers/GitHub/univex-tooling/node_modules/semantic-ui-less/definitions/modules/transition.less (line 19, column 0)
[2] at runLoaders (/Users/bmoellers/GitHub/univex-tooling/node_modules/webpack/lib/NormalModule.js:286:20)
[2] at /Users/bmoellers/GitHub/univex-tooling/node_modules/loader-runner/lib/LoaderRunner.js:364:11
[2] at /Users/bmoellers/GitHub/univex-tooling/node_modules/loader-runner/lib/LoaderRunner.js:230:18
[2] at context.callback (/Users/bmoellers/GitHub/univex-tooling/node_modules/loader-runner/lib/LoaderRunner.js:111:13)
[2] at process._tickCallback (internal/process/next_tick.js:68:7)
Кто-нибудь знает, как сделать псевдонимы, упомянутые в статье, используя конфигурацию Neutrino WebPack?
Из статьи: // в верхней части конфигурационного файла веб-пакета
module.exports = {
entry: ...,
output: {
...
},
resolve: {
alias: {
'../../theme.config$': path.join(__dirname, 'my-semantic-theme/theme.config')
}
},
module: {
...
}
}
Что я пробовал в моей конфигурации нейтрино:
neutrino.config.module
.rule('compile')
.use('babel')
.tap(options => merge({
plugins: [
["module-resolver", {
"root": [''],
"alias": {
"@univex/admin-api": "../../../src/modules/admin-api/src",
"@univex/admin-mobx": "../../../src/modules/admin-mobx/src",
"@univex/integration-component": "../../../src/modules/integration-component/src",
"@univex/models": "../../../src/modules/models/src",
"@univex/utilities": "../../../src/modules/utilities/src",
"../../theme.config$": "../../my-semantic-theme/admin/theme.config",
}
}],
],
}, options));
},
В основном, когда мы используем другой импорт в нашем коде, который мы затем псевдоним обратно в код в нашем моно репо (так import '@univex/admin-api
псевдонимы в ветке кода выше). Однако, похоже, это не помогает. Я также пытался переместить это neutrino.config.resolve.alias
и установить ключ там, но до сих пор не решить проблему. Я также попытался удалить $
от theme.config$
,
Есть ли разница для @import
, Обратите внимание, что наша кодовая база является моно-репо, поэтому она имеет много модулей и три приложения в одной кодовой базе. Каждый построен по-своему. Каждый построен с webpack-dev-server --mode development
, Это тогда управляется конфигурациями нейтрино.