如何在不保留每种文件类型的加载器的情况下,通过Webpack对文件运行任意bash脚本?

时间:2017-09-02 22:46:44

标签: webpack webpack-2 loader webpack-loader

似乎Webpack运行的工具通过“加载器”转换代码,而不是直接使用这些工具的API。这为这些工具添加了一个抽象层,这有时意味着工具的API没有完全公开,或者工具的更新需要时间在加载器中更新。 Here's a more detailed description of the problem

我用Grunt / gulp遇到了这个问题,并最终放弃了那些支持使用我通过npm运行的bash脚本直接转换我的源代码。是否有可能与Webpack做同样的事情?如果是这样,怎么样?

1 个答案:

答案 0 :(得分:2)

created a custom Webpack loader调用shell-loader,它使用任意shell脚本并使用child_process.exec在其加载的每个文件的内容上运行它。我可以在webpack.config.js;

中使用它
{
  test: /.*\.css$/,
  use: [ 'css-loader', { loader: 'shell-loader', options: {
    script: 'postcss --use autoprefixer'
  }} ]
}

它似乎有用,作为概念的证明,但是我不确定在使用Webpack时这是不是一个好主意,或者如果我在一起黑客攻击他们本不应该这样做。