react学习笔记(2) - 组件的创建
React
组件的学习笔记(2) - 组件的创建
1. 类组件(Class
)
ES6
的加入让JavaScript
直接支持使用class
来定义一个类,react
创建组件的方式就是使用的类的继承
,ES6 class
是目前官方推荐的使用方式,它使用了ES6
标准语法来构建,看以下代码:
代码展示:
classComponent.js
组件
/* ---------------------- React中的类组件(class) ------------------------- */ |
index.js
React项目入口文件
import React from 'react'//1.引入react |
结果展示:
2. 函数组件
- 函数组件就非常的简单了,直接将组件的内容写成函数的返回值即可,如下:
代码展示
functionComponent.js
(函数组件)
/* -------------- 函数组件 ---------------- */ |
index.js
/* --------------- react项目入口文件 ---------------- */ |
- 但是在
react16.8
版本以前,函数式组件是不存在状态
的,那时是不推荐使用函数式组件的,较为推崇使用类组件
,但是在React16.8
版本以后更新了React hooks
,函数组件就有了状态
,与类组件平起平坐了
,到现在我们更推崇使用函数组件
结合react hooks
一起使用!
3. 组件间的嵌套
- 组件间的嵌套其实也是非常简单的, 我们只需要将每一个子组件定义好然后暴露出去,在对应的父组件中引入渲染即可,但是最好只设置一个
App
组件作为所有组件的父级组件
代码展示:
- 子级组件导航栏(
Naviber.js
)
/* -------- 外部组件1:导航栏组件 ----------- */ |
- 子级组件底部footer(
Footer.js
)
/* -------- 外部组件2:底部组件 ----------- */ |
- 父级组件
App
/* ------------ 组件间的嵌套(App父级组件) ------------- */ |
index.js
(React入口文件
)
/* --------------- react项目入口文件 ---------------- */ |
结果展示:
4. 组件的样式
行内样式
:想给虚拟dom
添加行内样式,需要使用表达式传入样式对象的方式来实现:
// 注意这里的两个括号,第一个表示我们在要JSX里插入JS了,第二个是对象的括号 |
行内样式需要使用
js
写入一个样式对象
,而这个样式对象的位置可以放在很多地方,例如render
函数里、组件原型上、外链js
文件中外部样式直接引入使用即可
代码展示:
- 组件中样式的使用
/* ------------ 组件间的样式 -------------- */ |
- 外部的
css
样式文件
#yellow{ |
index.js
/* --------------- react项目入口文件 ---------------- */ |
结果展示:
小结
- React推荐我们使用行内样式,因为React觉得每一个组件都是一个独立的整体,其实我们大多数情况下还是大量的在为元素添加类名,但是需要注意的是,
class
需要写成className
(因为毕竟是在写类js
代码,会收到js
规则的现在,而class
是类
关键字)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0许可协议。转载请注明来自 肥林の仓库