2017-09-02 16 views
8

Webpackは、これらのツールのAPIを直接使用するのではなく、「ローダー」を介してコードを変換するツールを実行するようです。これにより、ツールのAPIが完全に公開されていないことや、ツールの更新がローダーで更新されるまでに時間がかかることを意味する、これらのツールに対する抽象レイヤーが追加されます。 Here's a more detailed description of the problemファイルタイプごとにローダーを保守せずにWebpack経由で任意のbashスクリプトを実行するにはどうすればよいですか?

私はGrunt/gulpでこの問題に遭遇し、npmで実行するbashスクリプトを使って自分のソースを直接変換することを諦めてしまいました。 Webpackで同じことをすることは可能ですか?もしそうなら、どうですか?

答えて

1

shell-loaderと呼ばれ、任意のシェルスクリプトを受け取り、ロードする各ファイルの内容に対してchild_process.execを使用して実行します。私はwebpack.config.jsでこれを使うことができます。

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

概念の証明として、動作しているようですが、私は、彼らがすることを意図していなかったという事を一緒にハッキングしていた場合、私はWebPACKので作業する場合、これは良いアイデアですかどうかわからないんだけど、かさあ。

+0

注:これを使用して任意のスクリプトを実行することはできますが、postcssには適切なWebpackローダーが既にあるので、私はこれをpostcssに使用しません。 https://github.com/postcss/postcss-loader –

関連する問題