提问者:小点点

使用反应钩在两个div或文本之间切换


首先,我是新的反应和钩子。

我想做的是,当一个状态发生变化时,一个div或一些文本也会发生变化。

例如:

const App = ( ) => {

    const [textToggle, textToggleState] = useState(true)

    return (

        <div>This is come text</div>
        <div>This is come extra text</div>
        <div onClick={ () => textToggleState(!textToggle) }>Click me</div>
    );
};

export default memo(App);

所以在这种情况下,我有我的切换按钮,它将在真或假状态之间切换。我通常使用它从div中添加/删除类,例如:

<div className={textToggle ? "normal-class" : "super-class"}></div>

或者类似的东西。但是,我希望实现的是在上面的代码中显示两个前divs之间进行切换,或者在启动切换时在第一个divs中添加extract字。

我不太确定如何实现这一点,以及是否应该使用usestat函数来实现这一点。


共1个答案

匿名用户

如果只想相应地显示/隐藏每个div,请尝试以下操作

{textToggle && <div>This is come text</div>}
{!textToggle && <div>This is come extra text</div>}

或简化

{
 textToggle ?
  <div>This is come text</div>
 :
  <div>This is come extra text</div>
}

如果要添加extra文本,请尝试以下操作

<div>This is come {textToggle ? "" : "extra"} text</div>