最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

React如何實現(xiàn)像Vue一樣將css和js寫在同一文件

 更新時間:2024年01月03日 16:49:01   作者:田本初  
這篇文章主要介紹了React如何實現(xiàn)像Vue一樣將css和js寫在同一文件問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

如果想在React中想要像Vue一樣把css和js寫到一個文件中,可以使用CSS-in-JS。

使用CSS-in-JS

下載

npm i styled-components

使用

就像寫scss一樣,不過需要聲明元素的類型

基本語法及展示如下:

import styled from "styled-components"

export default () => {
  const Father = styled.div`
    width: 200px;
    height: 200px;
    background: pink;
    span {
      font-size: 20px;
    }
    &: hover {
      background: skyblue;
    }
  `
  const Son = styled.span`
    color: #f8e;
  `
  return (
    <>
      <Father>
        <Son>我是Son</Son>
      </Father>
    </>
  )
}

也可以通過styled()選擇要繼承的樣式,并且可以拿到狀態(tài)。

import { useState } from "react"
import styled from "styled-components"
export default () => {
  const Father = styled.div`
    width: 200px;
    height: 200px;
    background: pink;
    span {
      font-size: 20px;
    }
    &: hover {
      background: skyblue;
    }
  `
  const Son = styled.span`
    color: #f8e;
  `
  const Footer = styled(Father)`
    display: ${({ isShow }) => (isShow ? "block" : "none")};
    padding: 20px;
    border: 1px solid #333;
    border-radius: 30px;
  `

  const [show, setShow] = useState(false)
  return (
    <>
      <Father>
        <Son>我是Son</Son>
      </Father>
      <button onClick={() => setShow(!show)}>點我控制Footer的顯示/隱藏</button>
      <Footer isShow={show}>我是Footer</Footer>
    </>
  )
}

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

五家渠市| 得荣县| 岑巩县| 沅陵县| 米脂县| 分宜县| 隆回县| 邵阳市| 阳新县| 永修县| 清流县| 临海市| 金乡县| 恩施市| 龙井市| 泗水县| 五寨县| 澄城县| 柏乡县| 昌宁县| 宁都县| 曲麻莱县| 兴安县| 鄱阳县| 大石桥市| 鹤庆县| 辉南县| 渭源县| 抚远县| 双牌县| 哈密市| 平乡县| 成武县| 大新县| 定日县| 江都市| 永川市| 富蕴县| 广平县| 镇沅| 辽宁省|