react-native 在 SectionList 的 ref 中 setNativeProps 无效

先看代码

  render() {
    const { children, listRef } = this.props
    const { animatedValue, _panResponder } = this.state
    // console.log(listRef)
    listRef.setNativeProps({
      onScroll: () => {
        console.log('开始滚动')
      }
    })

    return (
      <Animated.View
        {..._panResponder.panHandlers}
        style={{
          transform: animatedValue.getTranslateTransform(),
        }}
      >
        {children}
      </Animated.View>
    )
  }

问题:第6行的onScroll没有如期触发

  • 可以确定 listRef 是一个正确的实例
  • SectionList 的 jsx 中传入的 onScroll 是可以生效的
  • listRef.setNativeProps({ scrollEnabled: true })是可以生效的

有没有道友知道是哪里出了问题?

阅读 3.4k
1 个回答

好吧,我在 官方github 找到了答案

事实上这个问题并没有被解决,因为当前版本的 RN (5.2) 的 SectionList 似乎不支持 setNativeProps 的完整功能

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题