Javascript 在条件三元内处理多个useState
因此,出于某种原因,我不能在条件三元中使用多个useState,但在第二个示例中,我可以 第一个有两个useStates,似乎有效Javascript 在条件三元内处理多个useState,javascript,reactjs,ecmascript-6,Javascript,Reactjs,Ecmascript 6,因此,出于某种原因,我不能在条件三元中使用多个useState,但在第二个示例中,我可以 第一个有两个useStates,似乎有效 const nextAnswer = () => { (videoIndex === videoData.length - 1) ? setVideoIndex(0):setVideoIndex(prevWord => prevWord + 1); setShowResults(false
const nextAnswer = () => {
(videoIndex === videoData.length - 1) ?
setVideoIndex(0):setVideoIndex(prevWord => prevWord + 1);
setShowResults(false)
}
但是这个似乎不起作用
const [showResults, setShowResults] = useState(false)
const [showButton, setShowButton] = useState("Show Answer")
const showMe = () => {
(setShowResults === false) ?
setShowResults(true); setShowButton("Hide Answer"):
setShowResults(false); setShowButton("Show Answer")
}
有人能帮我吗?你真的不应该用三元数来表示代码块。如果您需要帮助使第二个代码段正确运行,我建议您从不同的角度来看待逻辑 据我所知,你想 切换showResults值 基于showResults值有条件地呈现显示/隐藏答案 代码
基本上只是尽量保持代码干燥。你真的不应该在代码块中使用三元。如果您需要帮助使第二个代码段正确运行,我建议您从不同的角度来看待逻辑 据我所知,你想 切换showResults值 基于showResults值有条件地呈现显示/隐藏答案 代码
基本上只是尽可能地保持代码的干性。您的三元代码有问题,无法运行两条语句。只需使用if语句
if (!showResults) {
setShowResults(true);
setShowButton("Hide Answer");
} else {
setShowResults(false);
setShowButton("Show Answer");
}
您的三元语句有问题,无法运行2条语句。只需使用if语句
if (!showResults) {
setShowResults(true);
setShowButton("Hide Answer");
} else {
setShowResults(false);
setShowButton("Show Answer");
}
啊,我是想避免这个。但我想这没办法,谢谢你!啊,我是想避免这个。但我想这没办法,谢谢你!
if (!showResults) {
setShowResults(true);
setShowButton("Hide Answer");
} else {
setShowResults(false);
setShowButton("Show Answer");
}