Я использую react-native-oauth
и получаю эту ошибку (см. Красное изображение внизу) при попытке авторизации. Я искал и нашел только это similar unanswered question. Я посмотрел на источник и нашел where the error is raised на линии 954 и, кажется, это потому, что moduleIDs.count
должна равняться methodIDs.count
и paramsArrays.count
:RCTBatchedBridge.m Ошибка: неверное сообщение данных - все должно быть длиной:% zd. React Native, iOS simulator
if (RCT_DEBUG && (moduleIDs.count != methodIDs.count || moduleIDs.count != paramsArrays.count)) {
RCTLogError(@"Invalid data message - all must be length: %zd", moduleIDs.count);
Так, еще в the source, я смотрю на эти объекты и найти их определено чуть выше, на линии 943-945, и они используют RCTConvert, чьи функции «... все принимают значение JSON в качестве входных данных и сопоставляют его с собственным классом Objective-C или классом». - React's docs
Похоже, что это ошибка передачи и/или связанная с сетью ошибка. Но у меня есть в основном 0 знаний по этим областям и чувствую, что я попал в барьер для расследования и задавался вопросом, есть ли у кого-нибудь идеи двигаться вперед. Быть новее для Реагента Родной и никогда не сделав какой-либо Objective-C, не может мне помочь.
Кроме того, вот мой код, порождающий ошибки.
import OAuthManager from 'react-native-oauth';
import {
Alert
} from 'react-native'
var env = require('../environment.js')
const config = {
facebook: {
client_id: env.getKey("FB_ID"),
client_Secret: env.getKey("FB_SECRET")
}
}
const manager = new OAuthManager('myAppName')
manager.configure(config);
exports.authWithFb =() => {
manager.authorize('facebook')
.then(resp => Alert.alert('response!' + resp))
.catch(err => Alert.alert('error msg here: ' + err));
}
Я предполагаю, что эта неопределенная ошибка связана с ошибкой RCTBridge, но не уверен. Вы можете видеть, когда я предупреждаю об ошибке manager.authorize
. TypeError: undefined is not an object (evaluating 'fn')
:
Edit:
Когда я пытаюсь Предупредить config
объекта, я получаю сообщение об ошибке, пожалуйста, не будучи в состоянии stringify это подобъектов.
При поиске в консоли в хромированном отладчике, я получаю «Не удается прочитать свойство„configureProvider“неопределенный» и configureProvider()
что react-native-oauth
использует так это выглядит, как менеджер не установлен прямо так, может быть, я не связываю библиотека хорошо. Проверьте, работает ли ссылка.
Im копается в ошибках немного, и это похоже на проблему с обещанием/обратным вызовом от NativeModules.OAuthManager
. Погрешность: TypeError: Cannot read property 'authorize' of undefined
. Когда я прыгаю в стек, я нахожу:
Любая помощь очень ценится, спасибо.
Также убедитесь, что вы правильно связали библиотеку –