为什么style-loader会影响应用的实际类名?

时间:2018-01-02 16:33:08

标签: javascript css webpack webpack-style-loader css-loader

我是webpack配置的新手,并且一直在学习加载器的使用。 据我所知:

  • css-loader读取文件并解析在那里找到的导入和网址(如果通过选项设置或者将类名更改为范围名称,也可以创建css模块...)
  • style-loader生成js,然后将标签注入DOM。

当我使用带有样式加载器的css-loader时,我同时获得了作用域类名和注入的样式。

对我来说奇怪的是,当我删除样式加载器时,实际上没有注入样式,但是,组件上的类名也变为未定义。 为什么没有使用与样式加载器相关的更改?

供参考 - 这是webpack.config.js中的模块部分

  module: {
rules: [
  {
    enforce: "pre",
    test: /\.js$/,
    exclude: /node_modules/,
    loader: "eslint-loader",
  },
  {
    test: /\.js$/,
    exclude: /node_modules/,
    loader: "babel-loader",
  },
  {
    test: /\.scss$/,
    exclude: /node_modules/,
    use : [
        ***remove this*** --->'style-loader',
      {
        loader: 'css-loader',
        options: {
          importLoaders: 1,
          localIdentName: '[name]__[local]__[hash:base64:5]',
          modules: true
        }
      },
      'postcss-loader',
      'sass-loader'
    ]
  },
  {
    test: /\.(css|scss)$/,
    include: /node_modules/,
    use : [
      'style-loader',
      'css-loader'
    ]
  }
]

}

0 个答案:

没有答案