【问题标题】:How do I click on a button rendered with the function using react native?如何单击使用本机反应的功能呈现的按钮?
【发布时间】:2020-05-05 06:23:35
【问题描述】:

[这是我的代码 (https://hizliresim.com/gPmJDO)

这是我的错误 (https://hizliresim.com/dLYAaD)

【问题讨论】:

  • 您能否提供实际代码以便我们更好地查看?
  • @Yasin DALKILIÇ 检查这个 - reactjs.org/docs/…

标签: reactjs react-native react-native-flatlist


【解决方案1】:

在不将函数绑定到组件实例的情况下,将它们设为箭头函数

handleClick = () => {
  alert("test");
};

renderGridItem = ({ item }) => (
  <TouchableOpacity onPress={this.handleClick}>
      ...
  </TouchableOpacity>
);

希望这对您有所帮助。欢迎提出疑问。

【讨论】:

    【解决方案2】:

    将处理函数作为箭头函数。

      handleClick = () => {
          alert("Test Alert");
        }
    

    然后调用它

    renderGridItem = ({ item }) => (
      <TouchableOpacity onPress={()=>this.handleClick()}>
          ....
          ...
      </TouchableOpacity>
    )
    

    如果你使用handler函数作为箭头函数,你不需要绑定。

    【讨论】:

    • 在渲染中使用箭头函数会在每次组件渲染时创建一个新函数,这可能会破坏基于严格身份比较的优化。
    • 是的,但该函数的范围仅限于渲染方法。
    猜你喜欢
    • 1970-01-01
    • 2018-08-17
    • 2022-07-06
    • 2017-05-14
    • 1970-01-01
    • 1970-01-01
    • 2019-12-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多