当前位置: 首页 > news >正文

常熟专业做网站咸宁住房和城乡规划建设局网站

常熟专业做网站,咸宁住房和城乡规划建设局网站,qq上传空间wordpress,网络营销活动策划方案1. 语法定义 const [state, dispatch] useState(initData) state:定义的数据源,可视作一个函数组件内部的变量,但只在首次渲染被创造。 dispatch:改变state的函数,推动函数渲染的渲染函数,有非函数和函…

 1. 语法定义

const [state, dispatch] = useState(initData)

state:定义的数据源,可视作一个函数组件内部的变量,但只在首次渲染被创造。

dispatch:改变state的函数,推动函数渲染的渲染函数,有非函数和函数两种情况。

initData:state的初始值,有非函数和函数两种情况。

2. 使用案例

1. 变量的定义和修改

import { useState } from 'react'// 定义变量
const [name, setName] = useState('Vue')// 修改变量
const handleUpdate = () => {setName('React')
}

2. 对象的定义和修改

import { useState } from 'react'// 定义对象
const [user, setUser] = useState({ name: '张三', age: 30 })// 修改对象
const handleUser = () => {// setUser({ name: '李四', age: 50 })setUser({ ...user, age: 50 })
}

3. 数组的定义和修改

import { useState } from 'react'// 定义数组
const [list, setList] = useState(['Tom', 'Jack']);// 修改数组
const handleList = () => {setList([...list, 'Lily'])
}

4. 声明时添加逻辑返回

import { useState } from 'react'const num = 1;// 声明通过函数返回
const [name ,setName] = useState(()=>{if(num==1){return "这是单数"}else{return "这是双数"}
})

5. 更新时添加逻辑返回


import { useState } from 'react'// 定义变量
const [count, setCount] = useState(0);// 修改变量
const handleCount = () => {// 通过函数返回setCount((count) => count + 1)}

3. 异步更新

React是异步更新,它会将多次更新合并到一起。

import { useState } from 'react'// 定义变量
const [count, setCount] = useState(0);// 修改变量
const handleCount = () => {setCount(count => count + 1)setCount(count => count + 1)setCount(count => count + 1)setCount(count => count + 1)
}

由于React是异步合并更新,上面调用了4次setCount会统一合并,值会变为4,但只会渲染一次。

如果想要强制刷新渲染,可以使用flushSync函数提高优级,这样就会又渲染一次。

import { useState } from 'react'import { flushSync } from 'react-dom'// 定义变量
const [count, setCount] = useState(0);// 修改变量
const handleCount = () => {// setCount(count => count + 1)// setCount(count => count + 1)// setCount(count => count + 1)// setCount(count => count + 1)// 合并批量更新渲染一次setTimeout(() => {setCount(count => count + 1)setCount(count => count + 1)setCount(count => count + 1)setCount(count => count + 1)})// 强制更新渲染一次flushSync(() => {setCount(count => count + 1)setCount(count => count + 1)})}

http://www.15wanjia.com/news/156057.html

相关文章:

  • python做网站好不好蚌埠seo
  • 公司网站建设需要注意哪些内容建设银行官方网站手机版下载
  • 自做网站北京公司注销流程
  • 六安网站磁县网络推广
  • 酒泉网站建设平台wordpress文章语言切换
  • 微网站开发素材生物科技网站模板
  • 手机网站技术做百度移动端网站软件下载
  • 京东的网站规划与建设ppt模板怎么做 下载网站
  • 怎么为自己做的网站申请域名app开发需要多久
  • 网站备案 手印随便做一套小程序设计多少钱
  • 呼市做网站建设的公司哪家好购物网站开发多少钱
  • 网页设计网站模板做毕业证教育网站
  • 成都网站制作成都网站制作做淘宝客网站用什么程序最好
  • 重庆建站模板展示wordpress phpdisk
  • 台州网页设计公司乐天seo视频教程
  • 临沂网站制作公司哪家好青岛做网站
  • 自己做的网站怎么才能被收录做网站接活犯法吗
  • 建网站手续寿光网站建设优化
  • 东莞南城做网站推广的公司做网站制作外包
  • 怎样提高网站点击率网易企业邮箱客户端下载
  • 百度商桥 手机网站招聘网站建设工作总结
  • 菏泽市住房和建设局网站河北区做网站公司
  • 网站创建公司网站自定义wordpress邮件找回密码
  • 龙华个人网站建设企业英语网站
  • 百度有没有做游戏下载网站中国建设的网站
  • 香洲区建设局网站苏州有哪些it大厂
  • 给人做ppt的网站微信推广怎么做
  • 怎么做企业网站运营上海到北京高铁价格查询
  • 衡水稳定的网络建站使用wordpress编辑
  • 织梦新闻门户网站模板 原创精品wordpress后台登陆显示404