我正在尝试集成React + typescript + scss + css-modules。一切顺利,但是我遇到了运行时错误,因为已指示react在每个default
对象的style
属性下查找,该属性不存在。我相信这可能与我导入样式的方式有关
从“ ./header-styles.scss”
中导入*作为样式这是基于typings-for-css-modules-loader †的建议:
如果遇到以下错误:
error TS1192: Module '"xxxxx/xxxx/src/style.sass"' has no default export.
也许您应该按照以下方式导出样式:
import * as styles from './style.sass';
我遇到了这个错误,所以我改用了这种语法。
如果我在第一个React.createElement style
default`键的chrome中设置的断点处检查, I can see my class names are in-tact there. It is just there is this
对象的话。
default
对象下的style
对象,或完全摆脱default
?相关的WebpackConfig.rules:
{
test:/^\.?[\w\-\/]+\.local\.s?css$/,
exclude: /node_modules/,
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: [
{
loader: 'typings-for-css-modules-loader',
options: {
modules: false,
// namedExport: true,
camelCase: true
}
},
{
loader: `sass-loader`,
options: {
sourceMap: true,
includePaths: [resolve(paths.src, 'client')]
}
}
]
})
}
†就在VSCode的gif之下