【发布时间】:2020-05-28 11:11:40
【问题描述】:
我有 2 个按钮,如果按下它们,它们的背景颜色就会改变。如果我同时按下它们,它们都会改变背景颜色。我想在两者之间切换背景颜色(例如,如果我按下一个,另一个会回到原始状态)我该如何实现? `
const [color, setColor] = useState("false");
const [font, setFont] = useState("#505050");
const [color2, setColor2] = useState(false);
const [font2, setFont2] = useState("#505050");
function onClick() {
const colors = [
"#ff6700",
"#ffffff"
]
if ( colors.indexOf(color) === 0 ) {
setColor(colors[1]);
} else {
setColor(colors[0]);
}
const fonts = [
"#ffffff",
"#505050"
]
if ( fonts.indexOf(font) === 0 ) {
setFont(fonts[1]);
} else {
setFont(fonts[0]);
}
}
function onClick2() {
const colors2 = [
"#ff6700",
"#ffffff"
]
if ( colors2.indexOf(color2) === 0 ) {
setColor2(colors2[1]);
} else {
setColor2(colors2[0]);
}
const fonts2 = [
"#ffffff",
"#505050"
]
if ( fonts2.indexOf(font2) === 0 ) {
setFont2(fonts2[1]);
} else {
setFont2(fonts2[0]);
}
}
【问题讨论】:
-
是否应该始终更改颜色,或者仅当其中一个按钮具有“活动”颜色时?
标签: javascript function react-native react-hooks expo