我在我的react应用程序中使用css-module,但是当我尝试在.js文件中导入外部文件时,我不能全局导入它们,因为我不能将它们包装在:global块中,而webpack将它们解释为要用作对象的样式。
如何将CSS文件作为全局CSS从外部库导入?这是CSS,它应该与导入的插件相匹配。
e.g.in源/索引.js
import 'draft-js/dist/Draft.css';
//cannot wrap in a :global block since it is imported
import 'react-responsive-carousel/lib/styles/carousel.min.css';
// is wrapped in a :global {...} block, so it works
import './styles/app.css'; Webpack配置,来自Create-React-App
test: /\.css$/,
loader: [
require.resolve('style-loader'),
{
loader: require.resolve('css-loader'),
options: {
importLoaders: 1,
modules: true,
minimize: true,
},
},
'postcss-loader'
]发布于 2018-05-08 11:10:26
一种选择是为src样式和node_modules样式设置两个单独的规则,并且只在src配置中将modules设置为true。它看起来应该类似于下面(我没有测试这个)-重要的选项是include和exclude,以及从应用于node_modules的规则中删除modules。
{
test: /\.css$/,
exclude: /node_modules/,
loader: [
require.resolve('style-loader'),
{
loader: require.resolve('css-loader'),
options: {
importLoaders: 1,
modules: true,
minimize: true,
},
},
'postcss-loader'
]
},
{
test: /\.css$/,
include: /node_modules/,
loader: [
require.resolve('style-loader'),
{
loader: require.resolve('css-loader'),
options: {
importLoaders: 1,
minimize: true,
},
},
'postcss-loader'
]
}https://stackoverflow.com/questions/50224270
复制相似问题