React 中使用内联样式设置背景颜色
在 React 中使用内联样式设置背景颜色:
- 在元素上设置样式 style 属性。
- 将 backgroundColor 属性设置为特定颜色。
import {useState} from 'react';
export default function App() {
const [isActive, setIsActive] = useState(false);
const handleClick = () => {
// 👇️ toggle
setIsActive(current => !current);
// 👇️ or set to true
// setIsActive(true);
};
const bgColor = 'salmon';
return (
<div>
{/* ✅ set background color */}
<div style={{backgroundColor: 'lime', color: 'white'}}>Avocado</div>
<br />
{/* ✅ set background color using a variable */}
<div style={{backgroundColor: bgColor, color: 'white'}}>Apple</div>
<br />
{/* ✅ set background color on click */}
<div
style={{
backgroundColor: isActive ? 'violet' : '',
color: isActive ? 'white' : '',
}}
onClick={handleClick}
>
Hello world
</div>
</div>
);
}
我们使用样式对象的 backgroundColor 属性来设置元素的背景颜色。
样式属性的值包含在 2 组花括号中。
<div style={{backgroundColor: 'lime', color: 'white'}}>Avocado</div>
如果我们需要在点击时设置元素的背景颜色,请使用状态变量来跟踪点击状态。
import {useState} from 'react';
export default function App() {
const [isActive, setIsActive] = useState(false);
const handleClick = () => {
// 👇️ toggle
setIsActive(current => !current);
// 👇️ or set to true
// setIsActive(true);
};
return (
<div>
{/* set background color on click */}
<div
style={{
backgroundColor: isActive ? 'violet' : '',
color: isActive ? 'white' : '',
}}
onClick={handleClick}
>
Hello world
</div>
</div>
);
}
我们在元素上设置了 onClick 属性,所以每次点击它时,都会调用 handleClick 函数。
在我们的 handleClick 函数中,我们只需切换 isActive 状态。
我们使用三元运算符有条件地在元素上设置 backgroundColor 样式。
<div
style={{
backgroundColor: isActive ? 'violet' : '',
color: isActive ? 'white' : '',
}}
onClick={handleClick}
>
Hello world
</div>
三元运算符与 if/else 语句非常相似。
换句话说,如果 isActive 变量存储真值,我们将 backgroundColor 属性设置为紫罗兰色,否则将其设置为空字符串。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。