配置一个或多个条目

时间:2019-05-09 12:35:27

标签: webpack

我想对某些条目而不是全部进行优化。

有办法吗?

例如:

const webpack = require('webpack');
const CopyPlugin = require('copy-webpack-plugin');
const CleanWebpackPlugin = require('clean-webpack-plugin');

module.exports = {
  entry: {
    app: './src/client.js',
    server: './src/server.js',
  },
  output: {
    path: __dirname + '/dist',
    chunkFilename: '[name].chunk.js'
  },
  module: {
    rules: [
      {
        test: /\.(js|jsx)$/,
        exclude: /node_modules/,
        use: ['babel-loader']
      },
      {
        test: /\.css$/,
        loader:['style-loader', 'css-loader']
      },
      {
        test: /\.(gif|png|jpe?g|svg)$/i,
        use: [
          'file-loader',
          {
            loader: 'image-webpack-loader',
          },
        ],
      },
    ]
  },
  resolve: {
    extensions: ['*', '.js', '.jsx']
  },
  plugins: [
    new webpack.ProgressPlugin(),
    new CleanWebpackPlugin(),
    new CopyPlugin([
      { from: 'public/index.html' },
    ])
  ],
  devtool: 'inline-source-map',
  optimization: {
    splitChunks: {
      chunks: 'all',
    },
    runtimeChunk: {
      name: entrypoint => `runtime_${entrypoint.name}`,
    },
  },
  devServer: {
    publicPath: '/dist',
    contentBase: __dirname + '/dist',
    hot: true,
  }
};

我只想对客户端(应用)条目而不是服务器进行优化。

我可以复制导出,为我的客户端应用程序创建一个,为服务器创建一个,但是我将复制每个模块,规则,​​插件和其他可能演变的配置!可扩展性太差了。

我正在搜索某些东西,但一无所获……我不知道如何在哪里,我以为我可以用

only : 'app',

但我找不到它,也许这是我梦x以求的东西

顺便说一句,如果您认为我可以升级我的webpack.config,如果您有任何建议,请随时分享!

全部!

1 个答案:

答案 0 :(得分:0)

由于您正在此处进行同构设置,(看起来)。您可能要使用两个单独的Webpack配置。

有些属性,例如target,只能设置为一个值,并应用于整个条目和编译集。

幸运的是,webpack确实允许您返回array of configuration objects!