React Native FlatList Refresh Issue только в бета-версии для Android - PullRequest
0 голосов
/ 26 апреля 2019

Мои реквизиты обновляются в магазине приставок, а затем я обновляю FlatList, используя дополнительные данные с каналами, которые создаются, если пользователь находится в пределах 50 км от определенного местоположения.

Иногда обновление происходит очень медленнои, кажется, есть ошибка, связанная с тем, что мне приходится тянуть вниз, но я думаю, что это может быть просто проблемой того, сколько времени требуется, чтобы получить пользовательские координаты.Он обновляется как с отладкой, так и с выпуском Android (иногда занимает пару секунд), но в загруженном мной вчерашнем APK-файле он не обновляется, пока я не покину эту конкретную страницу и не вернусь.

Я включаю всекод в github, поскольку его легче читать:

https://github.com/Sbphillips19/FlatListBug

Также вот основной компонент с FlatList:

  componentDidMount() {
    this.props.getUserPublicChannels();
  }

  componentDidUpdate(prevProps) {
    if (
      this.props.mountainsInRange &&
      prevProps.mountainsInRange !== this.props.mountainsInRange
    ) {
      this.props.getUserPublicChannels();
    }
  }

  render() {
    return !this.props.loadPublicChannels && this.props.publicChannels ? (
      <MessagePanel publicChannels={this.props.publicChannels} />
    ) : (
      <LoadingAnimation />
    );
  }
  render() {
    // rendering all public channels
    const renderPublicChannels = ({ item }) => {
      return (
        <ListItem
          title={item.info.Name}
          onPress={() => {
            this.props.changeChannelPublic(item.id),
              this.props.navigation.navigate('Chat', {
                chatName: `${item.info.Name}`
              });
          }}
        />
      );
    };

Этоработает нормально на IOS, но, к сожалению, только в бета-версии выпущен в магазине Google Play.Я все еще жду выхода на IOS, но симулятор и устройство работают нормально, возможно, у меня будет та же проблема, когда она будет выпущена в магазин IOS.

...