为什么我突然有了 webpack metro bundler 而不是普通的 metro bundler?

Why am I suddenly having the webpack metro bundler instead of the normal metro bundler?

如果这听起来很愚蠢或明显,请原谅我,但我使用 expo 的各种项目已经工作了一段时间,但突然间,在我的项目中途,每当我使用 metro bundler 启动时expo 开始并在 android 设备上尝试 运行,我突然收到一条错误消息说 packager is not 运行 at 19001,每当它发生时,我请注意,metro bundler 略有不同,如下所示,它显示“在开发模式下在端口 19006 上启动 webpack”Webpack metro bundler 而不是正常的“Starting Metro端口 19001 上的捆绑程序”。但是当我尝试使用 expo start 打开我以前的项目或开始一个全新的项目时,错误不会发生并且正常的地铁捆绑器出现并且一切正常(至少在最初)

这是我当前错误项目的package.json

{
  "main": "node_modules/expo/AppEntry.js",
  "scripts": {
    "start": "expo start",
    "android": "expo start --android",
    "ios": "expo start --ios",
    "web": "expo start --web",
    "eject": "expo eject"
  },
  "dependencies": {
    "expo": "~38.0.1",
    "expo-status-bar": "^1.0.0",
    "react": "~16.11.0",
    "react-dom": "~16.11.0",
    "react-native": "https://github.com/expo/react-native/archive/sdk-38.0.0.tar.gz",
    "react-native-web": "~0.11.7",
    "react-redux": "^7.2.0",
    "redux": "^4.0.5"
  },
  "devDependencies": {
    "@babel/core": "^7.8.6",
    "babel-preset-expo": "~8.1.0"
  },
  "private": true
}

如有任何建议,我们将不胜感激

webpack 用于 web,metro 用于 ios 和 android。希望有一天一个捆绑器可以不受任何限制地用于所有平台,但现在这是需要的。

我解决了。这是我的失误。问题来自我安装的 redux。在安装 redux 时,我使用 npm install redux 而不是 npm install --save redux。我不得不使用 npm uninstall --save redux react-redux 卸载 redux 和 react-redux 并使用 npm install --save redux react-redux 重新安装它们。现在一切正常