Получение ошибки: «React Native не установлен» - PullRequest
1 голос
/ 02 августа 2020

введите здесь описание изображения

Когда я собираюсь выполнить команду expo start, выдает следующую ошибку: я начинаю работать с react native, и я не Трудно много, что это может быть?

app.json

   

 {
  "expo": {
    "name": "Project",
    "slug": "Project",
    "version": "1.0.0",
    "orientation": "portrait",
    "sdkVersion": "35.0.0",
    "icon": "./assets/icon.png",
    "splash": {
      "image": "./assets/splash.png",
      "resizeMode": "contain",
      "backgroundColor": "#ffffff"
    },
    "updates": {
      "fallbackToCacheTimeout": 0
    },
    "assetBundlePatterns": [
      "**/*"
    ],
    "ios": {
      "supportsTablet": true
    },
    "web": {
      "favicon": "./assets/favicon.png"
    }
  }
}

пакет. 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": "^35.0.0",
    "react": "16.8.3",
    "react-native": "https://github.com/expo/react-native/archive/sdk-35.0.0.tar.gz",
    "expo-status-bar": "^1.0.2",
    "react-dom": "~16.11.0",
    "react-native-web": "~0.11.7"
  },
  "devDependencies": {
    "@babel/core": "^7.8.6",
    "babel-preset-expo": "~8.1.0"
  },
  "private": true
}

новая ошибка

введите описание изображения здесь

папки enter image description here

I changed the files in the folder

\node_modules\metro-config\src\defaults\blacklist.js

in

var sharedBlacklist = [
  /node_modules[/\\]react[/\\]dist[/\\].*/,
  /website\/node_modules\/.*/,
  /heapCapture\/bundle\.js/,
  /.*\/__tests__\/.*/
];

for

var sharedBlacklist = [
  /node_modules[\/\\]react[\/\\]dist[\/\\].*/,
  /website\/node_modules\/.*/,
  /heapCapture\/bundle\.js/,
  /.*\/__tests__\/.*/
];

now this error is showing up

введите описание изображения здесь

эта последняя ошибка была решена установкой expo прямо на эмулятор.

Ответы [ 2 ]

0 голосов
/ 02 августа 2020

попробуйте изменить источник response-native в вашем пакете. json изменив эту строку:

"react-native": "https://github.com/expo/react-native/archive/sdk-38.0.2.tar.gz",

для этого

"react-native": "^0.63.0",
0 голосов
/ 02 августа 2020

Как показано в ошибке, React Native не установлен. Итак,

(1) npm install

(2) npm start

Вот и все. Если проблема не исчезла, обновите свой вопрос, указав содержимое файла app.json.

ОБНОВЛЕНИЕ:

Я думаю, что проблема в вашем sdk версия. Попробуйте изменить версию sdk.

(1) замените 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": "~37.0.3",
    "expo-status-bar": "^1.0.2",
    "react": "~16.11.0",
    "react-dom": "~16.11.0",
    "react-native": "https://github.com/expo/react-native/archive/sdk-37.0.1.tar.gz",
    "react-native-web": "~0.11.7"
  },
  "devDependencies": {
    "@babel/core": "^7.8.6",
    "babel-preset-expo": "~8.1.0"
  },
  "private": true
}

Выше я изменил версию sdk с 38 на 37.

(2) Удалить node_module и .expo папок, если они были созданы в каталоге root вашего проекта.

(3) npm install

(4) npm start

Вот и все. Теперь должно работать!

...