Учитывая эту конфигурацию для загрузчиков S CSS:
return {
test: /\.scss$/,
use: [
{ loader: "lit-scss-loader", options: { minify: !isDev } },
{ loader: "extract-loader" },
{ loader: "css-loader", options: { sourceMap: isDev, importLoaders: 2 } },
{ loader: "sass-loader", options: { sourceMap: isDev } },
{
loader: "alias-resolve-loader",
options: {
alias: {
"@css": pCss,
"@img": pImg
}
}
}
}
(где lit-scss-loader
- специальный загрузчик, который применяет скомпилированную CSS в качестве конструируемой таблицы стилей в веб-компоненте LitElement), Все работает точно так, как ожидается с s css файлами, которые имеют четко определенные стили.
Однако возникает проблема, когда он пытается объединить в файл css, который должен импортировать стили из другого места. Мне нужно вытащить модули стиля из пакета NPM, например @import "@momentum-ui/core/css/components/button.css";
, и при этом я получаю сообщение об ошибке:
ERROR in ./src/components/button/styles/button.scss
Module build failed (from ./node_modules/extract-loader/lib/extractLoader.js):
/Users/kehyde/Desktop/agentx-base-components/node_modules/resolve/lib/sync.js:83
throw err;
^
Error: Cannot find module './@momentum-ui/core/css/components/button.css' from '/Users/kehyde/Desktop/agentx-base-components/src/components/button/styles'
at Function.resolveSync [as sync] (/Users/kehyde/Desktop/agentx-base-components/node_modules/resolve/lib/sync.js:81:15)
at /Users/kehyde/Desktop/agentx-base-components/node_modules/extract-loader/lib/extractLoader.js:115:60
at require (/Users/kehyde/Desktop/agentx-base-components/node_modules/extract-loader/lib/extractLoader.js:110:86)
at /Users/kehyde/Desktop/agentx-base-components/src/components/button/styles/button.scss:3:41
at Script.runInContext (vm.js:131:20)
at Script.runInNewContext (vm.js:137:17)
at /Users/kehyde/Desktop/agentx-base-components/node_modules/extract-loader/lib/extractLoader.js:147:20
at Generator.next (<anonymous>)
at step (/Users/kehyde/Desktop/agentx-base-components/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at /Users/kehyde/Desktop/agentx-base-components/node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new Promise (<anonymous>)
at new F (/Users/kehyde/Desktop/agentx-base-components/node_modules/babel-runtime/node_modules/core-js/library/modules/_export.js:36:28)
at /Users/kehyde/Desktop/agentx-base-components/node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12
at evalModule (/Users/kehyde/Desktop/agentx-base-components/node_modules/extract-loader/lib/extractLoader.js:165:63)
at evalDependencyGraph (/Users/kehyde/Desktop/agentx-base-components/node_modules/extract-loader/lib/extractLoader.js:167:12)
at Object.<anonymous> (/Users/kehyde/Desktop/agentx-base-components/node_modules/extract-loader/lib/extractLoader.js:32:31)
@ ./src/components/button/Button.ts 13:0-41 105:16-21
@ ./src/index.ts
@ ./src/[sandbox]/sandbox.ts
Я безуспешно отыскивал доски объявлений. Настройка опции publicPath
Extract-loader никак не влияет на эту ошибку. Я в тупике. Есть идеи?