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

进了网站的后台系统 怎么改公司的网站python 开发手机app

进了网站的后台系统 怎么改公司的网站,python 开发手机app,域名注册好了怎么做网页,百度网站开发语言概述 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/14305705/

相关文章:

  • 网站播放图片多大合适乐清论坛网乐清
  • 本机做网站资源最全的网盘搜索引擎
  • 网站整站下载器下载utf8网页乱码支付网站建设费
  • 专业的做网站鞍山网站建设公司
  • 公司网站页面网站建设品牌
  • 做网站需要掌握的技术北京有名的广告公司
  • 婚纱摄影网站怎么建设如何提高网站的搜索
  • 网站建设接口开发网站美食建设图片
  • 建设网站需要花费什么费用怎么办网站平台
  • 1天学会搭建营销网站py可以做网站吗
  • 蒙古网站群建设亳州做网站哪家好
  • 网站在那里备案企业小程序开发
  • 制作公司网站视频上海环球金融中心简介
  • 网站规划设计的一般流程用asp.net做的网站贴吧
  • 中国全球门户网站邢台吧贴吧
  • 郑州自建网站个性化网站定制
  • 西安做网站公司哪家好 应该怎么选择企业网站有什么
  • 本科学院网站建设方案深圳网站建设企业
  • 一个主机建多少个网站酒店网站建设背景分析
  • 唐山网站建设400多少钱最新军事新闻热点事件
  • 网站专题策划中国电信六大外包公司
  • 一家专门做原产地的网站做网页要钱吗
  • html怎么做网站设计怎样做免费网站
  • 深圳营销网站建设模板wordpress 短网址插件
  • 外贸网站建设 义乌做网站效果图是用ps还是ai
  • 无域名网站 能否被百度网站建设需要服务器么
  • 千海网站建设 小程序做美食软件视频网站
  • 百度微信网站顺企网下载安装手机版
  • 如何优化网站内部链接电商如何推广
  • wdcp 网站建设wordpress数据写入