Код из GetStream.io документация не работает в RN. строка должна быть вставлена

#react-native #react-native-ios #getstream-io

#react-native #react-native-ios #getstream-io

Вопрос:

Я использую сервер Firebase на узле вместе с RN. Я хотел использовать GetStream.io в моем приложении. Серверная часть работает нормально, но пример из GetStream.io документация для интерфейса не работает, я просто получаю эту ошибку.

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

Я попытался вставить атрибут, хотя он не существует в GetStream.io пример. Я все еще получаю эту ошибку.

Вот как выглядит мой код:

   import React from 'react';
  import SafeAreaView from 'react-native-safe-area-view';
  import { StreamApp } from 'react-native-activity-feed';
  import { Text, View } from "react-native";

  const newsFeed = () => {
   return (
     <View>
      <SafeAreaView style={{flex: 1}} forceInset={{ top: 'always' }}> 
        <StreamApp
      apiKey="myapikey"
      appId="myappid"
      token="mytoken"
  />
    </SafeAreaView>
  </View>
  );
 };

 export default newsFeed;
  

https://getstream.io/react-native-activity-feed/tutorial / ссылка на официальное руководство от GetStream.io

Ответ №1:

Судя по сообщению об ошибке, кажется, что ваш newsFeed компонент отображается внутри текстового элемента.

Вот ссылка на проверку в RN, которая вызывает эту ошибку -> https://github.com/facebook/react-native/blob/master/Libraries/Components/View/View.js#L44

Например. этот код JSX вызвал бы ту же ошибку:

 <Text>
   < newsFeed />
</Text>
  

Предполагая, что это так (или его разновидность), вы можете очень легко решить эту проблему, обернув свой компонент в <View> и удалив <Text> , когда в этом нет необходимости.

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

1. Но у меня нет <Text> в моем компоненте

Ответ №2:

Итак, что я выяснил.

Проблема была из-за этой строки:

  import SafeAreaView from 'react-native-safe-area-view';
  

Что вам следует сделать, так это следующее:

  import { SafeAreaView } from "react-native";