在我的React App中,我有一个功能组件,想在状态值之间切换。我的ArrayList<String> values = new ArrayList<String>();
函数似乎无法正常工作。我试图将toggleNav
设置为isMenuOpen
,但我的语法似乎不正确。
我有以下代码:
isMenuOpen
答案 0 :(得分:5)
useState
返回的第二个元素是setter
。您不能仅仅改变状态。试试这个:
const navBar = () => {
//set initial state
const [isMenuOpen, setMenuOpen] = useState(false);
// toggle variable
let toggleNav = () => {
setMenuOpen(!isMenuOpen)
}
return (
<button onClick={toggleNav}>Toggle</button>
)
}
正如评论中指出的,toggleNav
是不必要的:
const navBar = () => {
//set initial state
const [isMenuOpen, setMenuOpen] = useState(false);
return (
<button onClick={() => setMenuOpen(!isMenuOpen)}>Toggle</button>
)
}