【问题标题】:How to change state in React Router Link component?如何更改 React Router Link 组件中的状态?
【发布时间】:2021-11-05 05:47:03
【问题描述】:

如何将 Link 组件的“ischecked”状态传递给下面的输入? 我的目标是单击其他组件上的按钮,将输入框设置为 true。

<Link
     to={{pathname: "/Module1",
            state: {
                ischecked: false,
                },
              }}
              className={styles.menuCard}>
              <h2>Introduction &rarr;</h2>
              <p>Lesson 1</p>
              <input className={styles.checkbox} type="checkbox" 
              checked={ischecked} /> <<--cant access? how to access?
</Link>

【问题讨论】:

    标签: reactjs input react-router state react-link


    【解决方案1】:

    我明白了,isChecked 是一个状态,

      const App = () => {
        const [isChecked, setChecked] = useState(false)
        const onChange = e => { setChecked(e.target.checked) }
    
        return <input type="checkbox" checked={isChecked} onChange={onChange} />
      }
    

    一旦您捕获了状态行为,您就可以将此标志发送到代码中的任何位置。

    【讨论】:

    • 谢谢,可能稍有不同的是,我单击了一个单独组件上的按钮,实际上是一个“Module1”组件,它将复选框更改为 true。所以我需要能够从链接指向的组件中更改输入复选框的值。 (模块1)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-23
    • 2020-01-09
    • 2021-05-12
    相关资源
    最近更新 更多