Ошибка типа: это._config.server.rewriteRequestUrl не является функцией

#react-native #npm #expo #yarnpkg #metro-bundler

Вопрос:

Я использовал yarn start и expo start видел свои приложения, созданные в React Native.

Приложение открывается, если я открою его в самом веб-браузере, но в консоли во время эмулятора Android Studio отображается следующая ошибка

 Opening exp://192.168.1.2:19000 on Pixel_3a_API_30
TypeError: this._config.server.rewriteRequestUrl is not a function
    at Server._processRequest (C:STUDYGithub-User-n-Repo-Searchernode_modulesmetrosrcServer.js:364:35)    
    at processRequest (C:STUDYGithub-User-n-Repo-Searchernode_modulesmetrosrcServer.js:351:10)
    at call (C:UsersUserPCAppDataRoamingnpmnode_modulesexpo-clinode_modulesconnectindex.js:239:7)      
    at next (C:UsersUserPCAppDataRoamingnpmnode_modulesexpo-clinode_modulesconnectindex.js:183:5)      
    at next (C:UsersUserPCAppDataRoamingnpmnode_modulesexpo-clinode_modulesconnectindex.js:161:14)     
    at next (C:UsersUserPCAppDataRoamingnpmnode_modulesexpo-clinode_modulesconnectindex.js:161:14)     
    at jsonParser (C:UsersUserPCAppDataRoamingnpmnode_modulesexpo-clinode_modules@expodev-servernode_modulesbody-parserlibtypesjson.js:110:7)
    at call (C:UsersUserPCAppDataRoamingnpmnode_modulesexpo-clinode_modulesconnectindex.js:239:7)      
    at next (C:UsersUserPCAppDataRoamingnpmnode_modulesexpo-clinode_modulesconnectindex.js:183:5)      
    at remoteDevtoolsCorsMiddleware (C:UsersUserPCAppDataRoamingnpmnode_modulesexpo-clinode_modules@expodev-serversrcmiddlewareremoteDevtoolsCorsMiddleware.ts:31:3)

 

Я думаю, проблема в том, что я использовал yarn и npm для установки разных зависимостей. Как я могу вернуться назад сейчас? Или есть какое-то другое решение?

Правка: Ошибка только в этом конкретном приложении, другие разработанные приложения также отлично работают в эмуляторе.

Комментарии:

1. Вы уже нашли какое-нибудь решение?

2. Нет, мне пришлось ограничить проект только веб-приложением.

3. А, ладно, я понял. Это интересно

Ответ №1:

Я обновил пакет metro до последней версии, и ошибка исчезла:

 "metro-config": "^0.66.2",
 

Комментарии:

1. Я попробую это в ближайшее время и сообщу обновленную информацию здесь