javascript - Webpack 加载器别名?

标签 javascript webpack webpack-style-loader

我有一个相当复杂的样式表加载器设置:

  {
    test: /\.scss$/,
    loader: ExtractTextPlugin.extract("style",
      "css?sourceMap&localIdentName=[path][name]__[local]__[hash:base64:5]!sass?outputStyle=expanded&" +
      "includePaths[]=" + other stuff)
    )
  }

效果很好,但在某些情况下,我想将 modules 选项添加到 css-loader,所以它看起来像这样:

require('./foo.scss!css?modules&sourceMap&localIdentName=[path][name]__[local]__[hash...');

但我不能到处都这样做。

我如何配置它,以便我可以在某些要求上启用 css-loader 模块标志,同时保持其余部分不变?

也许类似于加载程序的“别名”,例如require('./foo.scss!my-scss-with-modules-flag-alias')?

我能想到的唯一解决方案是编写一个加载器,该加载器执行语法转换以将加载器配置内联到某些 require 调用中……但这既脆弱又复杂。

最佳答案

resolveLoader.alias 将在这里工作。即。

resolveLoader: {
    alias: {
        'with-modules': 'loader definition goes here',
    }
}

使用这个配置你可以简单的做

require('with-modules!./foo.scss');

在您的代码处。

关于javascript - Webpack 加载器别名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31313088/

相关文章:

laravel-5.3 - Vue 2 Laravel 5.3 vue-toastr

javascript - meteor :访问子模板中的响应式(Reactive)字典变量

php - ui slider 上的值

node.js - 如何修复使用命令 npm run build 时显示的错误?

webpack - 使用 webpack 全局导入手写笔文件

javascript - Laravel mix - 'window is not defined',目标 : node 中带有样式加载器

javascript - 如何将日期格式从 ("2014-12-24") 转换为 ("3/24/2014")

javascript - 如何设置 jquery ui datepicker 的最大日期

css - Bootstrap 4 和 SCSS - 基于基类覆盖主类

javascript - 导入 Moment.js 使 webpack 构建失败