将本机函数反应为 flatlist 项中的道具

咖啡

您好,我在调用子组件中作为 prop 传递的函数时遇到问题。我试图只用相关的代码行来复制我的代码:

class Parent extends Component {
  constructor(props) {
    super(props)
    this.press = this.press.bind(this)
  }
  press(param) {
    console.log(param)
  }
  renderItem = ({item}) => (
    <Child item={item} press={this.press} />
  )

  render() {
    return (
      <FlatList renderItem={this.renderItem} />
    )
  }
}

class Child extends PureComponent {

  handlePress(param) {
    // do some stuff
    // call parent function
    this.props.press(param)
  }
  render() {
    const { id } = item
    return <Button onPress={() => this.handlePress(id)} />
  }
}

在按下按钮时没有任何反应,我已经得到了这样的东西:

<Child press={(param) => this.press(param)} />

但是这会导致性能问题。

我怎样才能使这项工作?

咖啡

经过一段时间的测试,我找到了这个解决方案:

class Parent extends Component {
  press = (param) => {
    console.log(param)
  }

  renderItem = ({item}) => (
    <Child item={item} press={this.press} />
  )

  render() {
    return (
      <FlatList renderItem={this.renderItem} />
    )
  }
}

class Child extends Component {

  handlePress(param) {
    // do some stuff
    // call parent function
    this.props.press(param)
  }

  render() {
    const { id } = item
    return <Button onPress={() => this.handlePress(id)} />
  }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

反应本机FlatList渲染

来自分类Dev

反应本机FlatList键

来自分类Dev

如何在flatlist中水平对齐元素反应本机?

来自分类Dev

如何更改 Flatlist 中的 textInput 值反应本机?

来自分类Dev

反应本机Flatlist文本更改

来自分类Dev

反应导航中的FlatList渲染问题

来自分类Dev

反应原生FlatList中的响应延迟

来自分类Dev

将额外的道具数据传递给react-native-draggable-flatlist中的renderItem

来自分类常见问题

用列反应Native FlatList,最后一项宽度

来自分类Dev

反应本机FlatList删除项目问题

来自分类Dev

numColumns中断scrollToIndex反应本机FlatList

来自分类Dev

在函数中反应本机函数

来自分类Dev

React Native FlatList - 在返回组件的渲染方法中调用函数

来自分类Dev

获取Flatlist ItemSeparatorComponent跟踪项?

来自分类Dev

Tab ScrollView中的FlatList

来自分类Dev

将数组对象渲染到FlatList React Native中

来自分类Dev

用图像和文本反应本机FlatList问题

来自分类Dev

反应本机; 如何在 FlatList 中放置空格

来自分类Dev

Flatlist 未显示(反应原生)

来自分类Dev

将本机集合样式反应为State

来自分类Dev

将本机图像 url 反应为参数

来自分类Dev

将本机FlatList滚动到底部以进行聊天

来自分类Dev

将本机 UI 集成到本机反应中?

来自分类Dev

FlatList的最后一项从底部修剪

来自分类Dev

我无法从FlatList逐个点击通过终极版中删除项目反应本土

来自分类Dev

在 flatlist 中的每个项目上渲染四个按钮以编程方式反应原生

来自分类Dev

如何确保父项将填充的道具传递给VueJS中的子项

来自分类Dev

在反应构造函数中访问道具

来自分类Dev

反应本机:如何获取API数据(JSON)并将其插入Flatlist和API映像

Related 相关文章

热门标签

归档