首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Webpack:如何使用CSS-modules和从外部库导入CSS?

Webpack:如何使用CSS-modules和从外部库导入CSS?
EN

Stack Overflow用户
提问于 2018-05-08 08:45:44
回答 1查看 1.5K关注 0票数 4

我在我的react应用程序中使用css-module,但是当我尝试在.js文件中导入外部文件时,我不能全局导入它们,因为我不能将它们包装在:global块中,而webpack将它们解释为要用作对象的样式。

如何将CSS文件作为全局CSS从外部库导入?这是CSS,它应该与导入的插件相匹配。

e.g.in源/索引.js

代码语言:javascript
复制
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

代码语言:javascript
复制
test: /\.css$/,
loader: [
  require.resolve('style-loader'),
  {
   loader: require.resolve('css-loader'),
   options: {
     importLoaders: 1,
     modules: true,
     minimize: true,
    },
   },
    'postcss-loader'
]
EN

回答 1

Stack Overflow用户

发布于 2018-05-08 11:10:26

一种选择是为src样式和node_modules样式设置两个单独的规则,并且只在src配置中将modules设置为true。它看起来应该类似于下面(我没有测试这个)-重要的选项是includeexclude,以及从应用于node_modules的规则中删除modules

代码语言:javascript
复制
{
    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'
    ]
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50224270

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档