Следующий документ о реакции на исходный код для интеграции реагирующего с существующим приложением IOs. Структура каталога как интегрируемого документа:
android/
ios/
Podfile
#...other ios file
node_modules/
react-native
react
@react-native-community
package.json
....
, поэтому при запуске pod install из Podfile может вызываться функция use_native_modules
require_relative './libs/react-native-libs/node_modules/@react-native-community/cli-platform-ios/native_modules'
...
use_native_modules!
Но я хочу организовать проект по-другому, поскольку измените существующую структуру моего проекта,
, поэтому я добавляю модульact-native-integrate, как часть моего проекта IOs, как этот
my_ios_project
Podfile
libs/
... other modules
react-native-integrate
node_modules
react-native
@react-native-community
react
package.json
И затем я изменяю путь относительного -module:
require_relative './libs/react-native-libs/node_modules/@react-native-community/cli-platform-ios/native_modules'
...
use_native_module!
Но проблема в файлах native_modules, а другие библиотеки в node_modules используют абсолютные значения require
. Например, в @react-community/cli-platform-ios/native_module.rb
есть строка, такая как
cli_resolve_script = "try {console.log(require('@react-native-community/cli').bin);} catch (e) {console.log(require('@react-native/cli'))}"
, которая требует абсолютного пути '@ реагировать-нативное сообщество'. Так что, когда я запускаю Pod install
мой файл pod из родительского каталога, node
не может распознать мой дочерний модуль, так что это вызывает ошибку.
Как я знаю, список spaths node_module в основном представляет собой список каталогов node_modules в каждом каталоге от текущего каталога до каталога root. А текущим каталогом является то, что каталогу подфайла, который вызывает, требуется 'native_module.rb'. Не могли бы вы дать мне решение этой проблемы, например, добавить путь к узлу из дочернего каталога или что-то еще? Спасибо.