2

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

这是我当前错误项目的 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
}

任何意见,将不胜感激

4

2 回答 2

2

我解决了。这是我的一个错误。问题来自我安装的 redux。在安装 redux 时,我使用npm install reduxnpm install --save redux. 我不得不使用卸载 redux 和 react-reduxnpm uninstall --save redux react-redux并使用npm install --save redux react-redux. 现在一切正常

于 2020-07-06T23:48:44.687 回答
1

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

于 2020-07-04T18:58:04.743 回答