react学习笔记(2) - 组件的创建
React组件的学习笔记(2) - 组件的创建
1. 类组件(Class)
ES6的加入让JavaScript直接支持使用class来定义一个类,react创建组件的方式就是使用的类的继承,ES6 class是目前官方推荐的使用方式,它使用了ES6标准语法来构建,看以下代码:
代码展示:
classComponent.js组件
/* ---------------------- React中的类组件(class) ------------------------- */  | 
index.jsReact项目入口文件
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许可协议。转载请注明来自 肥林の仓库




