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

网站备案连接怎么做南昌网站改版公司

网站备案连接怎么做,南昌网站改版公司,做网站整理信息的表格,临海受欢迎营销型网站建设React函数组件状态-state 对象 state state 中可以保存任意类型的 JavaScript 值#xff0c;包括对象。但是#xff0c;你不应该直接修改存放在 React state 中的对象。相反#xff0c;当你想要更新⼀个对象时#xff0c;你需要创建⼀个新的对象#xff08;或者将其拷⻉⼀…React函数组件状态-state 对象 state state 中可以保存任意类型的 JavaScript 值包括对象。但是你不应该直接修改存放在 React state 中的对象。相反当你想要更新⼀个对象时你需要创建⼀个新的对象或者将其拷⻉⼀ 份然后将 state 更新为此对象。 官⽹说明https://react.docschina.org/learn/updating-objects-in-state 改变对象state逻辑 把所有存放在 state 中的 JavaScript 对象都视为只读的你需要创建⼀个新对象并把它传递给 state 的设置函数使⽤扩展运算符拷⻉对象 “…” import React, { useState } from react; const App () {const [message, setMessage] useState({name: 吴用,website: teacherself.com})const changeName () {setMessage({ ...message, name: 安徽吴彦祖,website:asdasdas })}return (divh1{message.name}/h1h1{message.website}/h1button onClick{changeName}更改title/button/div); } export default App;改变嵌套对象逻辑 … 展开语法本质是“浅拷⻉”它只会复制⼀层。当你想要更新⼀个嵌套属性时你必须得多次使 ⽤展开语法。 setMessage({ ...message, staff: { ...message.staff, hobby: 洗脚 } });使⽤ Immer 编写简洁的更新逻辑针对复杂的对象数据 如果你的 state 有多层的嵌套你或许应该考虑将其扁平化。但是如果你不想改变 state 的数据结构你可能更喜欢⽤⼀种更便捷的⽅式来实现嵌套展开的效果,Immer是⼀个⾮常流⾏的库它可以让你使⽤简便但可以直接修改的语法编写代码并会帮你处理好复制的过程。 安装 npm install use-immer 引入 import { useImmer } from use-immer;使用 import React from react; import { useImmer } from use-immer; const App () {const [message, setMessage] useImmer({name: 吴用,website: teacherself.com})const changeName () {// setMessage({ ...message, name: 安徽吴彦祖,website:asdasdas })setMessage((draft){draft.name 安徽吴彦祖})}return (divh1{message.name}/h1h1{message.website}/h1button onClick{changeName}更改title/button/div); } export default App;数组 state 数组是另外⼀种可以存储在 state 中的 JavaScript 对象它虽然是可变的但是却应该被视为不可 变。同对象⼀样当你想要更新存储于 state 中的数组时你需要创建⼀个新的数组或者创建⼀ 份已有数组的拷⻉值并使⽤新数组设置 state。 改变数组state逻辑 数组是另一种对象你需要将React state中的数组视为只读的。不能直接修改原来数组相反需要生成一个新的数组。 数组添加删除元素 import React, { useState } from react; const App () {const [name, setName] useState()const [person, setPerson] useState([{ id: 0, name: 老王 }])return (divh1react学习/h1input value{name} onChange{(e) { setName(e.target.value) }} /button onClick{() {setPerson([...person, { id: person.length, name: name }])}}添加/buttonbutton onClick{() {setPerson(person.filter((i) i.id ! item.id))}}删除/buttonul{person.map((item) (li key{item.id}{item.name}button onClick{() {setPerson(person.filter((i) i.id ! item.id))}}删除/button/li))}/ul/div); } export default App;使⽤Immer编写简洁代码逻辑 import React, { useState } from react; import { useImmer } from use-immer; const App () {const [name, setName] useState()const [person, setPerson] useImmer([{ id: 0, name: 老王,check: false}])const handleChek(id,checked){setPerson((darft){const checkItem darft.find((i)i.idid)checkItem.check checked})}const deleteTab(item){setPerson(person.filter((i)i.id!item.id))}return (divh1react学习/h1input value{name} onChange{(e) { setName(e.target.value) }} /button onClick{() {setPerson([...person, { id: person.length, name: name,check: false}])}}添加/buttonbutton onClick{() {// setPerson(person.filter((i) i.id ! item.id))setPerson(person.filter((i)!i.check))}}批量删除/buttonul{person.map((item) (li key{item.id} input typecheckbox checked{item.check} onChange{(e)handleChek(item.id,e.target.checked)} /{item.name}button onClick{()deleteTab(item)}删除/button/li))}/ul/div); } export default App;React函数组件的副作⽤Hook-useEffec 使⽤useEffect实现计数器⼩案例 import React, { useEffect, useState } from react; import { root } from ./main; const App () {const [counte, setCounte] useState(0);const [name, setName] useState(⼩滴课堂);// 增加const add () {setCounte((counte) counte 1);};// 改变const change () {setName(xdclass.net);};// 卸载组件const handelDelete () {root.unmount();};useEffect(() {let timer setInterval(() {setCounte((counte) counte 1);}, 1000);return () {clearInterval(timer);console.log(组件卸载了);};}, []);return (divh1当前的计数{counte}/h1button onClick{add}增加/buttonh1{name}/h1button onClick{change}改变/buttonbutton onClick{handelDelete}卸载组件/button/div); }; export default App;react对象及其数组操作完结~
http://www.hkea.cn/news/14313658/

相关文章:

  • 菏泽网站开发公司佛冈网站建设
  • 集团网站网页模板网站下载软件
  • 网站的推广策略网页单页面设计
  • 网站内容和功能清单北京公司电话大全黄页
  • 劳务派遣做网站的好处棋牌软件开发定制
  • dedecms 网站安全设置普通话手抄报简单又漂亮
  • 网站的换肤功能怎么做dede旅游网站源码 多城市
  • 选择郑州网站建设Wordpress页面手机不适配
  • 福建省建设银行招聘网站企业建设网站有哪些费用
  • 网站建设需求单如何提高搜索引擎优化
  • 怎样策划一个营销型网站织梦dedecms教育培训网站模板
  • jsp做网站的优点水果零售电子商务网站综合评价与建设研究
  • 遵义网站搭建公司哪家好安徽网架公司
  • 做网站怎么租用服务器吗wordpress建设购物网站
  • 比较好的免费外贸网站网站建设的步骤图片过程
  • 网站建设与维护流程图wordpress添加验证码
  • 动漫网站首页设计网站建站之后需要维护吗
  • 建设部咨询资质网站网站建设_超速云建站
  • 电商网站开发的目的是wordpress要更新
  • 网站备案好不好什么是跨境电商主要做什么
  • 毕业设计做网站难吗新乡高端网站建设
  • 360网站服务监控alexa排名全球前50网站
  • 中国工程建设企业协会网站中小微企业纳税申报
  • 哈市哪里网站做的好江苏专业做网站的公司
  • 做网站容易学吗做网站需不需要云数据库
  • 做网站需要考虑哪些摄影网站建站
  • 赣州互联网哪家好seo深度优化服务
  • 域名网站空间佛山从事网站建设
  • 岑溪网站开发我的家乡网页制作代码
  • 沂源网站建设聊城门户网站建设