在cra脚手架中只要在父组件中引入了scss样式,那么这个样式就是全局样式 在react中用模块化来解决样式冲突的问题 在cra脚手架中,如果某个样式文件要开启模块化,只需要把样式文件命名为xx.module.css/xx.module.scss就可以了

    1. import React,{FC,useState} from "react"
    2. import Cmittem from "@/components1/cmittem"
    3. import "./cmtlist.scss"
    4. const Cmtlist:FC<{}>=(props)=>{
    5. const [commentList]=useState([
    6. { id: 1, user: '张三', content: '哈哈,沙发' },
    7. { id: 2, user: '李四', content: '哈哈,板凳' },
    8. { id: 3, user: '王五', content: '哈哈,凉席' },
    9. { id: 4, user: '赵六', content: '哈哈,砖头' },
    10. { id: 5, user: '田七', content: '哈哈,楼下山炮' }])
    11. return (
    12. <div>
    13. <h1>评论列表</h1>
    14. {
    15. commentList.map((item)=>{
    16. return (
    17. <Cmittem key={item.id} {...item}></Cmittem>
    18. )
    19. })
    20. }
    21. </div>
    22. )
    23. }
    24. export default Cmtlist

    image.png
    在cmtlist.scss中定义一个h1,如果将它引入**cmtlist父组件,那么她所拥有的子组件的样式同样会生效。
    css模块化的基本使用:
    1**.在cra脚手架中,如果某个样式文件要开启模块化,只需要把样式文件命名为
    xx.module.css/xx.module.scss就可以了
    image.png
    2.引入模块化文件样式

    1. import cssObj from "./cmtlist.module.scss"

    3.使用模块化样式

    1. import React,{FC,useState} from "react"
    2. import Cmittem from "@/components1/cmittem"
    3. import cssObj from "./cmtlist.module.scss"
    4. const Cmtlist:FC<{}>=(props)=>{
    5. return (
    6. <div>
    7. <h1 className={cssObj.title}>评论列表</h1>
    8. </div>
    9. )
    10. }
    11. export default Cmtlist

    此时引入的css样式在cssObj中,因此在cssObj的样式中能够拿到那个类名样式title