props&statesを使用したCSS
1665 ワード
presenterではpropsを関数ではなく情緒的な要素として用いる場合、
${(props)=>props.xxx}で渡されます。
propsとstateを使用してボタンの色を変更する
JavaScriptを含むコンテナでustState-を設定してreturnセクションに追加
JSXのpresenterボタンでpropsを取得する
emptoin用の位置から矢印関数で受信(条件は3つの演算子)
条件をコンテナに循環
const [isActive, setIsActive] = useState(false)
const onChangeWriter = (event) => {
setWriter(event.target.value);
if (event.target.value !== "" && title !== "" && contents !== "") {
setIsActive(true);
} else {
setIsActive(false);
}
};
const onChangeTitle = (event) => {
setTitle(event.target.value);
if (writer !== "" && event.target.value !== "" && contents !== "") {
setIsActive(true);
} else {
setIsActive(false);
}
};
const onChangeContents = (event) => {
setContents(event.target.value);
if (writer !== "" && title !== "" && event.target.value !== "") {
setIsActive(true);
} else {
setIsActive(false);
}
};
一人一人にこのような条件を与えれば.すべての入力時にのみ(true)ボタンが黄色に変わります.
最後のセルをクリアすると、ボタンが再びグレーに変わります.
各条件文にのみ適用
event.target.value !== ""
このように書くのは,この部分にそれぞれ対応する変数を加えているためであり,setStateが変わるからではなく,setStateが終わった後にその関数が変わるので,テンポが遅くなる->eventである.target.valueを加えるとすぐに変わる
Reference
この問題について(props&statesを使用したCSS), 我々は、より多くの情報をここで見つけました https://velog.io/@owlsuri/props-활용해서-버튼색깔-바꾸기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol