【问题标题】:how to prevent onPress event in react native如何在本机反应中防止 onPress 事件
【发布时间】:2022-01-09 05:03:39
【问题描述】:

当 onLongPress 被触发时,如何防止 onPress 的函数运行。当前当我松开按钮后长按onPress仍然被触发。

const _handleOnpress =()=>{
  console.log('onPressed triggered')
  // other task only for onPress event
}

const _handleLongPress =()=>{
  console.log('LongPress triggered')
  // other task only for onLongPress event
}

return(
  <Pressable
    onPress={_handleOnpress}
    onLongPress={_handleLongPress}
  >
    <Text>Press me</Text>
  </Pressable>
)

【问题讨论】:

标签: javascript reactjs react-native


【解决方案1】:

当按钮长按时,不会触发onPress函数。

但是如果你想在 onLongPress 函数被触发后禁用 onPress 函数,你可以设置一个状态为禁用它。例如:

const [disabled, setDisabled] = useState(false);

const _handleOnpress =()=>{
  if(!disabled){
    console.log('onPressed triggered')
    // other task only for onPress event
  }
}

const _handleLongPress =()=>{
  console.log('LongPress triggered')
  setDisabled(true);
  // other task only for onLongPress event
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-14
    • 1970-01-01
    • 2018-06-22
    • 1970-01-01
    • 1970-01-01
    • 2018-02-15
    • 2020-05-21
    相关资源
    最近更新 更多