无效的选项对象。开发服务器已使用与 API 架构不匹配的选项对象进行初始化。 “_assetEmittingPreviousFiles”

问题描述 投票:0回答:1

我正在使用 webpack - v5.90.3、webpack-cli - v5.1.4、webpack-dev-server - v5.0.2

在我的 webpack.config.dev.js 中:

const path = require('path');
const webpack = require('webpack');

module.exports = {
  mode: 'development',
  devtool: 'cheap-module-source-map',

  devServer: {
    static: path.join(__dirname, 'public/'),
    devMiddleware: {
      publicPath: '/dist/'
    },
    port: 3000,
    hot: "only"

  },

  entry: [
    require.resolve('react-dev-utils/webpackHotDevClient'),
    paths.appIndexJs,
  ],
  output: {

    path: paths.appBuild,

    pathinfo: true,
    filename: 'SHSADCAA/static/js/bundle.js',
    chunkFilename: 'SHSADCAA/static/js/[name].chunk.js',
    publicPath: publicPath,
    devtoolModuleFilenameTemplate: info =>
      path.resolve(info.absoluteResourcePath).replace(/\\/g, '/'),
  },
  optimization: {
    splitChunks: {
      chunks: 'all',
      name: false,
    },
    runtimeChunk: true,
  },
  resolve: {
      process.env.NODE_PATH.split(path.delimiter).filter(Boolean)
    ),
      'react-native': 'react-native-web',
    },
    plugins: [
      PnpWebpackPlugin,
      new ModuleScopePlugin(paths.appSrc, [paths.appPackageJson]),
    ],
  },
  resolveLoader: {
    plugins: [
      PnpWebpackPlugin.moduleLoader(module),
    ],
  },

我收到此错误:

无效的选项对象。开发服务器已使用与 API 架构不匹配的选项对象进行初始化。

  • options 有一个未知属性“_assetEmittingPreviousFiles”。这些属性是有效的: 对象{ allowedHosts?,bonjour?,客户端?,压缩?,devMiddleware?,标头?,historyApiFallback?,主机?,热?,ipc?,liveReload?,onListening?,打开?,端口?,代理?,服务器?, setupExitSignals?,setupMiddlewares?,静态?,watchFiles?,webSocketServer? }

我正在尝试从 v3 迁移到 v5,但我仍然停留在这个问题上。

javascript reactjs webpack webpack-dev-server
1个回答
0
投票

有示例问题,github 存储库上有一个线程。 https://github.com/webpack/webpack-cli/issues/2894

就我而言,我有在 webpack 开发服务器下启动应用程序的脚本。 而且好像必须先传配置对象,然后才传编译器。

这不起作用:

const webpackDevServer = new WebpackDevServer(compiler, { port: 5000, open: true, liveReload: true });

这有效:

const webpackDevServer = new WebpackDevServer({ port: 5000, open: true, liveReload: true }, compiler);

您的情况可能有所不同,但我在(1)方法中遇到了同样的错误。

© www.soinside.com 2019 - 2024. All rights reserved.