I am trying to import .scss
file in a react component.
import colors from './../../colors.scss'
The colors
is undefined
after I updated the project dependencies.
I've used node-sass
, css-loader
, mini-css-extract-plugin
, sass-loader
, style-loader
and postcss-loader
in my webpack.config.js
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: 'babel-loader',
},
{
test: /\.css$/i,
use: ['style-loader', 'css-loader', 'postcss-loader'],
},
{
test: /\.scss$/,
use: [
{ loader: 'style-loader' },
MiniCssExtractPlugin.loader,
{
loader: 'css-loader',
options: {
modules: true,
importLoaders: 1,
},
},
{ loader: 'postcss-loader' },
{
loader: 'sass-loader',
options: {},
},
],
exclude: [path.resolve(config.srcDir, 'styles')],
include: [config.srcDir],
},
{
test: /\.scss$/,
use: [
MiniCssExtractPlugin.loader,
'css-loader',
'postcss-loader',
{
loader: 'sass-loader',
options: {},
},
],
include: [path.resolve(config.srcDir, 'styles')],
},
],
}
Any idea what is missing or something that can be replaced to import scss styles as a value and access it in a react component, like
const parentClass = classNames(
'avatar-font',
`avatar-font--${avatarProps.size}`,
bgColor && colors[`bg-color--${ bgColor }`]
)
return <div className={ parentClass }></div>
Current lib versions are,
"webpack": "^5.77.0",
"css-loader": "^6.7.3",
"css-minimizer-webpack-plugin": "^5.0.0",
"postcss-loader": "^7.2.4",
"sass-loader": "^13.2.2",
"style-loader": "^3.3.2",