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

进了网站的后台系统 怎么改公司的网站珠海招聘网最新招聘信息

进了网站的后台系统 怎么改公司的网站,珠海招聘网最新招聘信息,seo搜索优化培训,公司注册信息怎么查概述 useMemo 是React 中的一个HOOK#xff0c;用于根据依赖在每次渲染时候缓存计算结果#xff1b; 大白话就是#xff0c;只有依赖项发生变化时候#xff0c;才会重新渲染为新计算的值#xff0c;否则就还是取原来的值#xff0c;有点类似 vue 中的 computed 计算属性…概述 useMemo 是React 中的一个HOOK用于根据依赖在每次渲染时候缓存计算结果 大白话就是只有依赖项发生变化时候才会重新渲染为新计算的值否则就还是取原来的值有点类似 vue 中的 computed 计算属性注意与 useEffect 区分 写法 const value useMemo(fnc, [a,b])第一个参数fnc 是一个函数用于根据 依赖项 a、b变化时候触发计算得出新值必须是一个没有任何参数的纯函数可以返回任意类型若 a、b没有变化则React 返回与上次相同的值若 a、b 发生改变则会返回新的值 第二个参数[a、b] 是一个数组函数 fnc中计算所依赖的值这个数组中若不传入具体变量而是传入 空数组[]那么会在组件每次更新时候重新渲染 这种缓存值的方式叫做 记忆化 (memoization), 这也是这个Hook 称为 useMemo 的由来 使用场景 1、当我们在 useMemo 中的代码运行很慢通过使用 useMemo 运行效率得到显著提升 2、将计算结果作为 props 传递给包裹在 memo 中的组件。当计算结果没有改变时你会想跳过重新渲染。记忆化让组件仅在依赖项不同时才重新渲染。 3、你传递的值稍后用作某些 Hook 的依赖项。例如也许另一个 useMemo 计算值依赖它或者 useEffect 依赖这个值。 例如 将计算结果作为 props 传给子组件 // 父组件 import React, {useMemo, useState} from react import ChildA from ./childA export default function MyMemo() {const [firstName, setFirstName] useState(Andy)const [lastName, setLastName] useState(Li)const [count, setCount] useState(0)const fullName useMemo(() {console.log(useMemo)return firstName lastName}, [firstName, lastName]) // 第二个参数是数组表示fullName 依赖 firstName 和 lastName 的值只有 firstName 和 lastName 值发生变化fullName 才重新计算const handleChangeName (e, type) {console.log(handleChangeName, e)// [set${type}](e.target.value)// if (type FirstName) {// setFirstName(e.target.value)// } else {// setLastName(e.target.value)// }}const handleChangeFirstName () {console.log(更新第一个名称)setCount(count1)setFirstName(11)}return (divinput typetext value{firstName} onChange{(e) handleChangeName(e, FirstName)} /p点击了{count}次/pbutton onClick{handleChangeFirstName}firstName/buttonbr/input typetext value{lastName} onChange{(e) handleChangeName(e, LastName)} /hr /ChildA fullName{fullName}/ChildA/div) }// 子组件 import React, {memo, useState} from react const ChildA memo(({fullName}) {console.log(renderChildAfullName----, fullName)return (divp全称{fullName}/p/div) }) export default ChildA通过 log日志我们可以发现共计点击了 firstName 按钮 18次只有在初始化和第一次点击时候才会渲染 子组件 因为第一次点击将 firstName 更新为 11之后的点击传入相同的值 11导致 useMemo 返回的 fullName 是相同的故不再进行渲染 而当我们使用 useEffect 时候会每次都更新子组件 注意 1、useMemo 只能作为组件代码性能优化使用如果在不使用 useMemo时代码无法正常运行那么我们需要先排查问题之后再使用 useMemo 2、避免不必要的更新 state 的 EffectReact 中很多的性能是由于其自身的更新链导致的所以我们要避免重复的更新同一个组件 3、尽可能的减少依赖项避免过多的依赖导致代码难以理解难以追踪问题我们可以将依赖项 设置成 state 4、我们应该减少状态的提升多使用state而不是滥用useMemo来处理性能
http://www.hkea.cn/news/14579203/

相关文章:

  • 网站设计制作新报价图片河源网站页面优化ppt
  • 企业免费网站建设西宁摄网站制作
  • 东莞市公司网站建设怎么样网站后台地址破解
  • 网站备案的原则厦门网站建设cnmxcm
  • 常州微信网站建设服务seo网站优化培训
  • 做网站的是什么怎么找到合适的网站建设商
  • 个人网站怎样申请2021黑帽seo
  • 做兼职网站的主要参考文献桂林生活网官网二手房
  • 网站开发设计师的工作wordpress中文免费模板下载地址
  • 辽宁网站制作传统建筑网站
  • wordpress手机编辑器插件下载地址网站品牌词优化怎么做
  • 竞猜网站建设城乡建设工程信息网
  • 龙岩网站建设找哪家网站改版 优势
  • 免费软件app下载大全正能量网站1688网站店招怎么做
  • 腾讯云win建设网站敬请期待英语怎么说
  • Delphi 网站开发框架网站不做301可以吗
  • 手机网站底部导航菜单济南个人网站建设
  • 广州网站建设360元老网站绑定新网站如何做?
  • 英国做电商网站dede网站收录
  • 如何自己做网站一年赚一亿怎么做一个网上商城
  • 贵州网站建设系统右玉网站建设
  • 网站设计师网站上传的工具
  • 做网站需要套模板网站开发技术联系方式
  • 国内优秀企业网站设计欣赏电商网站合作
  • 校园网站建设的开题报告苏州做网站最好公司有哪些
  • 内部网站制作网站制作有限
  • 房地产网站案例宝安公司网站建设
  • 网站建设毕业设计中期进度报告做三折页的网站
  • 网站设计模版免费下载网页设计的目的
  • 网站数据库是干什么的网站建设业务的途径的体会