Не удается найти модуль «реагировать на родную» - PullRequest
0 голосов
/ 16 апреля 2019

После этой статьи для точной настройки потока, точного шлифования и предварительного выравнивания (но с использованием пряжи вместо npm, если это имеет значение). Я либо получаю ошибку «модуль не найден» в реакции-нативе (которая исчезнет после установки с типом потока), но в любом случае файл в «Библиотеке» нативного реагирования, называемый «реактив-нативная реализация.js», имеет ошибки почти каждая строка из "не может точно определить модуль" инвариант "," warnOnce "," ActivityIndicator "".

Даже после установки 'flow-typed' и добавления заглушек ошибка из App.js исчезает, но приложение не работает, выбрасывая эту ошибку на сервере Metro

error: bundling failed: Error: Cannot find module 'babel-preset-react-native' from 'C:\PropertyFinder'
- If you want to resolve "react-native", use "module:react-native"
    at Function.module.exports [as sync] (C:\PropertyFinder\node_modules\resolve\lib\sync.js:58:15)
    at resolveStandardizedName (C:\PropertyFinder\node_modules\@babel\core\lib\config\files\plugins.js:101:31)
    at resolvePreset (C:\PropertyFinder\node_modules\@babel\core\lib\config\files\plugins.js:58:10)
    at loadPreset (C:\PropertyFinder\node_modules\@babel\core\lib\config\files\plugins.js:77:20)
    at createDescriptor (C:\PropertyFinder\node_modules\@babel\core\lib\config\config-descriptors.js:154:9)
    at items.map (C:\PropertyFinder\node_modules\@babel\core\lib\config\config-descriptors.js:109:50)
    at Array.map (<anonymous>)
    at createDescriptors (C:\PropertyFinder\node_modules\@babel\core\lib\config\config-descriptors.js:109:29)
    at createPresetDescriptors (C:\PropertyFinder\node_modules\@babel\core\lib\config\config-descriptors.js:101:10)

Это не только мой старый проект, но и репродуцированный. Мне нужен поток для лучшего понимания.

Ответы [ 2 ]

0 голосов
/ 17 апреля 2019

Я исправил ошибку, вот шаги, которые я сделал (могут быть улучшения):

1.На данный момент версия bin для потока равна 0.97.0, а реагирующая версия производит ^0.92.0, поэтому.flowconfig Я изменил его на ^ 0.97.0 2. Теперь В корне вашего проекта создайте файл flowLibs.js(or anything really). В .flowconfig под [libs] paste ./flowLibs.js и вставьте

<PROJECT_ROOT>/node_modules/.*   
<PROJECT_ROOT>/flowLibs.js

под тегом [ignore].3. Теперь в файле flowLibs.js, который вы только что создали, вставьте

declare module "react-native" { declare module.exports: any; }

или, если у вас возникли проблемы с другим модулем, замените response-native на свой модуль.это также исправляет ошибку, которая не может решить модуль «реактивный-родной»

ПРИМЕЧАНИЕ: вам не нужно устанавливать flow-bin

причина в том, что поток-type включен вact-native. Если вы установили расширение поддержки потокового языка в коде, то уже имеется последняя версия клиента потокового бина, т. е. по состоянию на 0.97.0

.
0 голосов
/ 16 апреля 2019

стандартное исправление для проблем с npm

rm -rm node_modules

очистка кэша npm -f

нпм я

Вы пользователь пряжи, поэтому попробуйте удалить старую папку node_modules и перезапустить установку.

...