GetStream FlatFeed: как сделать FlatList Ref анимированным компонентом React Native? - PullRequest
0 голосов
/ 11 июля 2020

Я пытаюсь реализовать сворачиваемый заголовок над представлением с вкладками, где основной вкладкой является GetStream.io React Native FlatFeed. Чтобы сворачиваемый заголовок работал, мне нужно применить Animated к ссылке FlatList в компоненте FlatFeed.

Я проделал ту же работу с обычным FlatList, и это выглядит так ...

<Animated.FlatList
      contentContainerStyle={{
        // TabScene should render below header and TabBar
        marginTop: headerHeight,
        backgroundColor: variables.containerBgColor,
      }}
      onScroll={Animated.event(
        [{ nativeEvent: { contentOffset: { y: scrollY } } }],
        { useNativeDriver: true },
      )}
...
/>

Я пытался анимировать FlatList через опору setListRef вот так ...

<FlatFeed
  setListRef={(ref): void => {
    if (!feedRefProps) {
      Animated.createAnimatedComponent(ref);
      setFeedRefProps({
        showsVerticalScrollIndicator: false,
        scrollEventThrottle: 16,
        onScroll: Animated.event(
          [
            {
              nativeEvent: {
                contentOffset: { y: scrollY },
              },
            },
          ],
          { useNativeDriver: true },
        ),
      });
    }
  }}
  flatListProps={feedRefProps && feedRefProps}
  ...
/>

Я пробовал это и еще около миллиона других вариантов и просто постоянно получаю error ...

"Инвариантное нарушение: компоненты, основанные на VirutalizedList, должны быть обернуты Animated.createAnimatedComponent для поддержки собственных событий onScroll с useNativeDrawer"

Сделать это любым способом случиться?

...