我想设计一个磁贴,在按下时会更改其文本,当按下任何其他组件时,文本应恢复到以前的状态

I'd like to design a tile that, upon pressing, changes its text, when any other component is pressed, text should revert to its previous state

提问人:Patryk Opiela 提问时间:11/14/2023 最后编辑:Patryk Opiela 更新时间:11/14/2023 访问量:15

问:

我想设计一个瓷砖,按下后会改变其文本。随后,当按下任何其他组件时,文本应恢复到其先前的状态。

export const Note = props => {
  const [text, showInfoText] = useState(props.text)
  const [info, setInfoTrue] = useState(false)
  const [isNote, changeIsNote] = useState(true)

  if(isNote){
    return(
      <Pressable onPress={()=>{
          if(info){
            changeIsNote(false)
          }else{
            showInfoText('Click again to delete note')
            setInfoTrue(true)
          }    
        }}>
        <View style={styles.note}>
          <Text>{text}</Text>
        </View>
      </Pressable>
    )
  }
  
} 

我试图阅读文档并寻找这个问题的解决方案,但不幸的是,我找不到准确的答案。

ReactJS 原生 OnPress

评论

0赞 Karl Knechtel 11/14/2023
的问题是什么?当您尝试演示的代码时会发生什么,这与需要发生的情况有何不同?
0赞 Patryk Opiela 11/15/2023
@KarlKnechtel 我正在寻找一种在按下除注释以外的任何其他组件后将文本状态更改为上一个状态的方法
1赞 Karl Knechtel 11/15/2023
你能制作一个在按下任何组件时会调用的处理程序吗?在该处理程序中,您能否检查按下了哪个组件,如果它位于 Note 组件上,则忽略该按钮?如果你把这些想法放在一起,你明白它将如何解决问题吗?

答: 暂无答案