react课程17-Thewildoasis项目起步
Last updated on September 25, 2024 am
全新的项目😼😼😼 本节重点:styled component
一、项目分析(懒得打字版)





✅安装eslint和router见课程十四
二、Styled Components
怎么prettier需要自己配置文件了呀,不然就不能用,解决了半天,栓Q……
要先在根目录创建一个.prettierrc并提供基本配置:{ “singleQuote”: true, “trailingComma”: “es5” }
⭕ npm i styled-components
⭕安装vscode-styled-components拓展使得css代码高亮
⭕https://styled-components.com/
(1)基本用法
1 | |
(2)属性
1、**as 属性**:
as属性允许你更改组件的根元素。例如,如果你有一个styled.button,你可以使用as="a"将其渲染为一个链接,而不是按钮。as可以动态地根据需要更改渲染的 HTML 元素,非常灵活。
1 | |
2、**type 属性**:
type属性通常用于原生 HTML 元素(如<input>或<button>),指定元素的类型。例如,按钮的类型可以是button、submit或reset。type属性是一个 HTML 属性,并不涉及 styled-components 的样式处理。
1 | |
3、role属性
role 是一个标准的 HTML 属性,用于指定元素的角色,通常与无障碍访问(Accessibility,简称 a11y)相关。它告诉屏幕阅读器等辅助技术,这个元素应该如何被解读或交互。
使用场景:
- 使用
as可以在同一个 styled 组件上进行多种表现形式的渲染,增加了组件的复用性。 type用于控制元素的行为,通常在表单相关组件中使用。
总的来说,as 提供了更大的灵活性和复用性,而 type 则是与元素行为相关的标准 HTML 属性。选择使用 as 而不是 type 主要是因为它与 styled-components 的设计理念相契合,允许更好地控制组件的呈现形式。
(3)默认props
1 | |
(4)装饰第三方包内组件
1 | |
使用括号链接第三方包内组件
(5)数组props
1 | |
三、零碎
(1)
⭕npm i react-icons 图标集: https://react-icons.github.io/react-icons/
(2)
1 | |
将layout组件包裹住其他的Route,使用
index关键字认证主页面,replace关键字替代历史url
(3)styled component的其他重要属性
1、**ref 属性**:
ref属性允许你访问组件的 DOM 节点或 class 实例,用于直接操作 DOM,常见于需要获取元素引用的场景,例如焦点管理、动画、滚动等。
2、**key 属性**:
key是 React 用来标识哪些元素被修改、添加或移除的特殊属性,尤其在渲染列表时非常重要。styled-components内的组件同样遵循这个规则。
3、**className 属性**:
className属性允许你给styled-component组件添加额外的 class 名,这对于在一个组件中应用多个样式规则或与外部 CSS 集成时特别有用。
4、**style 属性**:
style属性是内联样式,可以直接在组件上设置行内样式,用于一些动态样式的设置,但不建议与styled-components的样式系统大量混用。
5、**style 属性**:
style属性是内联样式,可以直接在组件上设置行内样式,用于一些动态样式的设置,但不建议与styled-components的样式系统大量混用。