样式控制
静态样式
使用css样式表
// App.js
import "./style/index.css";
function App() {
return (
<div className="main">
Hello world!
</div>
);
}
export default App;
/* index.css */
.main{
color: red,
}
使用JavaScript变量
// App.js
function App() {
return (
<div>
<div style={style.divStyle}>红色字体部分</div>
</div>
);
}
const style = {
// 注意css属性使用小驼峰命名
divStyle: {
color: 'red',
}
}
export default App;
动态样式
使用模版字符串
import { useState } from "react";
import "./style/index.css";
const [colorRed, setColorRed] = useState(false)
function App() {
return (
<div>
<div className={ colorRed ? "red" : "default" }>红色字体部分</div>
</div>
);
// 如果有多个类名:
return (
<div>
<div className={ `default ${ colorRed ? "red" : "blue" } ` }>红色字体部分</div>
</div>
);
}
export default App;
使用第三方依赖库
使用classnames
:
npm install classnames
# 或者使用yarn
yarn add classnames
import { useState } from "react";
import classNames from "classnames";
import "./style/index.css";
const [colorRed, setColorRed] = useState(false)
function App() {
return (
<div>
<div className={ classNames("default", { colorRed ? "red" : "blue" }) }>红色字体部分</div>
</div>
);
}
export default App;