1 回答
TA贡献1893条经验 获得超10个赞
因为您是以静态方式执行此操作并将其设置为状态,所以您所能做的就是简单地说:
const randomColor = '#'+Math.floor(Math.random()*16777215).toString(16);
然后使用:
<h1 style={{color: randomColor}}>
您可以通过更改状态变量来获得简单的重新渲染选项,这会强制重新渲染。
完整代码
import React, { useState } from "react";
export default function App() {
const [change, setChange] = useState(0);
const randomColor = "#" + Math.floor(Math.random() * 16777215).toString(16);
const style = { color: randomColor };
const handleChange = (e) => {
e.preventDefault();
// Just trigger a change.
setChange(change + 1);
};
return (
<div className="App">
<h1 style={style}>Hello CodeSandbox</h1>
<button onClick={handleChange}>Change Colour</button>
</div>
);
}
添加回答
举报