如何定义内联加载器?

时间:2017-05-25 23:41:51

标签: webpack webpack-2

文档给出了一个加载器here的示例,old docs说我应该能够定义一个"身份加载器"通过归还我给出的内容。

所以理论上,将i => i添加到我的加载器列表(如下所示)不应该破坏任何东西。

module: {
    rules: [
        ...
        {
            test: /\.less$/,
            use: [ i => i, ...cssLoaders, lessLoader],
        },
    ]
},

但它会导致此错误:

/home/me/Projects/myproj/node_modules/enhanced-resolve/lib/Resolver.js:151
    var idxQuery = identifier.indexOf("?");

                         ^
TypeError: Cannot read property 'indexOf' of undefined

这不在我的代码中,但必须是我给webpack带来意外的结果。

那么定义一个加载器(什么都不做)的正确语法是什么,我可以在use数组中使用(不发布节点模块)?

1 个答案:

答案 0 :(得分:2)

击穿

(在阅读提供完整代码的链接之前理解概念的伪代码)

使用resolveLoader.alias来加载"加载"你的装载机

// in webpack config
resolveLoader: {
    alias: {
        'minimal-loader': require('path').resolve('./minimal-loader'),
    },
},

然后您可以通过一个字符串,在规则中,按照您的想法访问它,使用use

数组
  module: {
    rules: [
        {
            test: /(.*)/,
            use: [{loader: 'minimal-loader'}],
        },
    ],
},

资源

(制作最简单的例子来展示如何实现这一点,以及如何调试它)