web-dev-qa-db-ja.com

アセットフォルダーをwebpackを使用してパブリックディレクトリにプッシュする

初めてWebpackを使用しています。現在、すべてが非常にうまく提供されています。私の問題は、distフォルダを作成しようとしているときです。現在、私はindex.htmlおよびbundle.jsファイルですが、アセットをdistフォルダーにプッシュする方法がわかりません。

私はファイルローダーをロードしましたが、実際にそれが私が望んでいることをしていないようで、私が実行したGoogle検索のどれも私が知る必要があることを教えていません。以下は私の設定ファイルです。誰かが馬を水に導くことはできますか?また、実行したら、すべての画像をReactコンポーネントにインポートする必要がありますか?

var path = require('path');
var HtmlWebpackPlugin = require('html-webpack-plugin');

module.exports = {
  entry: './app/index.js',
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'bundle.js',
    publicPath: '/'
  },
  module: {
    rules: [
      { test: /\.(js)$/, use: 'babel-loader' },
      { test: /\.scss$/, use: [ 'style-loader', 'css-loader', 'sass-loader' ]},
      { test: /\.(png|jpe?g|svg|)$/, use: { loader: 'file-loader', options: }}
    ]
  },
  devServer: {
    historyApiFallback: true,
  },
  plugins: [
    new HtmlWebpackPlugin({
      template: 'app/index.html'
    })
  ]
};
12
Alex Marple

Copy-Webpack-Plugin を使用する必要があったようです。

すべてのアセットを「app/assets /」から「dist/assets /」にコピーするには、次のようにするだけです。

  plugins: [
    new CopyWebpackPlugin([
      { from: 'app/assets', to: 'assets' }
    ])
  ]
14
Alex Marple