react

useState Hook

2022-05-31  本文已影响0人  生命里那束光

前言
问题:Hook 是什么? 一个 Hook 就是一个特殊的函数,让你在函数组件中获取状态等 React 特性
使用模式:函数组件 + Hooks
特点:从名称上看,Hook 都以 use 开头,useState Hook


一、useState Hook 的基本使用

二、class类式组件 对比 useState Hook

class类式组件:

函数式组件useState Hook:

三、解构

3.1、 使用数组解构简化

比如,要获取数组中的元素:

  1. 原始方式:索引访问
const arr = ['aaa', 'bbb']

const a = arr[0]  // 获取索引为 0 的元素
const b = arr[1]  // 获取索引为 1 的元素
  1. 简化方式:数组解构
    • 相当于创建了两个变量(可以是任意的变量名称)分别获取到对应索引的数组元素
const arr = ['aaa', 'bbb']

const [a, b] = arr
// a => arr[0]
// b => arr[1]

const [state, setState] = arr
// 解构出来的名称可以是任意名称

const [state, setState] = useState(0)
const [age, setAge] = useState(0)
const [count, setCount] = useState(0)

3.2、 对象解构

// 1.
const {foo,bar}={foo:'hello',bar:"world"};
console.log(foo,bar);
  
// 2.如果变量名和属性名不一致,需要重命名
const {foo:baz}={foo:"hello",bar:"world"};   baz:hello

3.3、 字符串解构

// 1.可以使用对象解构或者是数组解构,使用数组结构可以获取指定字符;使用对象结构可以获取实例属性方法;
const [a,b,c]='hello'; 
console.log(a,b,c);h e l

四、useState的初值

useState的初值可以是任意数据类型。比如,数值、字符串、对象等。

const [user, setUser] = useState({
    name: 'zs',
    age: 18,
})

五、useState hook 的使用规则

规则一:

规则二:

上一篇 下一篇

猜你喜欢

热点阅读