react学习笔记(32) - 样式组件(styled-components)的基本使用
样式组件(styled-components)
- 官方文档
styled-components是通过JavaScript改变CSS编写方式的解决方案之一,从根本上解决常规CSS编写的一些弊端。通过JavaScript来为CSS赋能,我们能达到常规CSS所不好处理的逻辑复杂、函数方法、复用、避免干扰。样式书写将直接依附在JSX上面,HTML、CSS、JS三者再次内聚。*all in js*的思想
基本使用
- 安装
npm i styled-components |
- 在
react项目中引入
import styled from 'styled-components'; // 引入 styled-components |
- 在项目中书写样式组件
/* ------------------- 某组件 ------------------------- */ |
结果展示:

其他属性
1. 透传
- 透传属性表示即便原声的标签被
styled-components给修改成其他的样式组件,但是原生标签的属性依旧可用,如下:
import React, { Component } from 'react' |
结果展示:

2. 基于props做样式判断
- 我们可以使用类似
React中的props的属性,来给封装好的样式组件传值, 通过props属性来控制样式
import React, { Component } from 'react' |
结果展示:

3. 样式化任意组件(一定要记得className)
- 在组件间的通信中,我们一样可以使用
styled-components来进行样式化组件,比如我们可以在父组件中样式化子组件(给子组件添加样式)
import React, { Component } from 'react' |
结果展示:

4. 样式的继承
- 有时候我们在编写组件的使用,一些
HTML元素的样式是有非常多重叠的,这时我们旧可以使用继承属性来编写样式,高效的复用样式代码
import React, { Component } from 'react' |
结果展示:

5. 动画
styled-components同样为我们提供了在组件中编写动画的样式功能, 通过而外的引入一个属性(keyframes)来设置对应的动画样式,随即在组件的调用即可!
import React, { Component } from 'react' |
结果展示:

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0许可协议。转载请注明来自 肥林の仓库



