五、【react】组件基础样式方案

1、行内样式(不推荐)

<h1 style={{color: "red"}}>Welcome to React</h1>
const myStyle = {
  color : 'green',
  size : '18px'
}
function App() {
  return (
    <div className="App">
      <h1 style={myStyle}>Welcome to React</h1>
    </div>
  );
}
export default App;

2、类样式
className

.foo{
    color: blue;
}
import './App.css'

function App() {
  return (
    <div className="App">
      <h1 className='foo'>Welcome to React</h1>
    </div>
  );
}
export default App;

classnames样式对象控制工具

npm install classnames --save

MyApp.tsx

import classNames from "classnames"
import "./MyApp.css"
import { useState } from "react"

function MyApp() {
  const [flag,setFlag] = useState(true)
  const classes = classNames({"my-b": flag, "my-r":!flag})
  const changeColor = () =>{
    console.log("flag changed to",!flag)
    setFlag(!flag)

  }
  return (
    <div className={classes}>
      <h1>Hello World</h1>
      <button onClick={changeColor}>check me</button>
    </div>
  )
}

export default MyApp

MyApp.css

.my-b{
  color: blue;

}
.my-r{
  color: red;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值