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

网站建设的技巧有哪些方面wordpress生成app

网站建设的技巧有哪些方面,wordpress生成app,徐州10年网站建设 推广公司,怎么用织梦修改建设一个新的网站React.memo和usememo React.memo React.memo是一个高阶组件,对组件进行性能优化,主要用于优化函数组件的性能,如果一个组件在相同的props下渲染出相同的结果,但是又不需要在组件更新的时候重新渲染,就可以使用react.…

React.memo和usememo

React.memo

React.memo是一个高阶组件,对组件进行性能优化,主要用于优化函数组件的性能,如果一个组件在相同的props下渲染出相同的结果,但是又不需要在组件更新的时候重新渲染,就可以使用react.memo来对其进行性能优化
React.memo能够记忆组件的渲染,让它在prop没有发生变化的时候重用上一次的结果,从而避免不必要的渲染专门用于函数组件

const MyComponent = React.memo(function MyComponent(props) {//
}
const MyComponent = React.memo(props => {// 
})

在默认情况下,react.memo只会对props进行浅层比较,如果props的结果比较复杂或者包含了不可变的数据结构,需要传入第二个参数,一个比较函数,来定制更新时机。

const Mycomponent = React.memo(function MyComponent(props) {//},(prev, next) => {//}
)

React.memo仅检查props变化,如果函数组件中有使用useState,useReducer或者是useContext这些hook的时候,就算props没有发生变化,组件还是会重新渲染,内部组件状态的变化或者是上下文的变化都会导致组件的更新。
只有组件更新比较频繁,而且更新不依赖于内部状态或者上下文的时候,使用React.memo比较合适

  • React.memo可能会增加应用的内存使用量,因为需要记忆组件的渲染结果
  • 如果组件经常有新的props传入导致经常重新渲染,使用react.memo会导致性能的负担
  • 组件渲染很快,或者是更新不频繁,没有必要使用react.memo
  • 最好是在遇到性能瓶颈的时候使用这些优化手段

useMemo

useMemo接受两个参数,分别是一个函数和一个数组,实际上是以来,函数里return函数,数组内存放依赖

interface ChildProps {name: { name: string; color: string };onClick: Function;
}
const Child = ({ name, onClick}: ChildProps): JSX.Element => {console.log('子组件?')return(<><div style={{ color: name.color }}>我是一个子组件,父级传过来的数据:{name.name}</div><button onClick={onClick.bind(null, '新的子组件name')}>改变name</button></>);
}
const ChildMemo = memo(Child);const Page = (props) => {const [count, setCount] = useState(0);const [name, setName] = useState('Child组件');return (<><button onClick={(e) => { setCount(count+1) }}>1</button><p>count:{count}</p><ChildMemo //使用useMemo,返回一个和原本一样的对象,第二个参数是依赖性,当name发生改变的时候,才产生一个新的对象name={useMemo(()=>({ name, color: name.indexOf('name') !== -1 ? 'red' : 'green'}), [name])} onClick={ useCallback((newName: string) => setName(newName), []) }{/* useCallback((newName: string) => setName(newName),[]) */}{/* 这里使用了useCallback优化了传递给子组件的函数,只初始化一次这个函数,下次不产生新的函数/></>)
}
http://www.yayakq.cn/news/452634/

相关文章:

  • 哪些网站可以做代理商东莞搭建网站要多少钱
  • 在线制作钓鱼网站源码wordpress 漏洞列表
  • win7可以做网站吗wordpress数据库配置文件路径
  • 成都网站建设公司有哪几家手机怎么样做网站
  • 目前做公司网站有没有用做网站有弹窗叫什么
  • 自助seo网站建设网站开发 报刊
  • 成都高端网站制作公司湖南省建设监理协会官网
  • 网站建设要学多少课程wordpress隐私页
  • 房产网站怎么建设东营网站开发招聘
  • 优惠券网站cms建设ppt模板做的好的网站有
  • 青岛建立网站电话建立自己的网站需要多少钱
  • 强的网站建设公域名被墙查询检测
  • 建工厂网站的公司成都网站建设好的公司
  • 关于建设工程招标类的公共网站北京广告公司聚集地
  • 网站建设防火墙级别要求网络广告策划流程有哪些
  • 音乐网站开发的项目背景天津app开发公司
  • 网站怎么做显得简洁美观做网站哪家强
  • 网站建设前途手机立体房屋设计软件
  • seo网站图片优化网页微信注册
  • 中国建设银行洛阳分行网站apache网站部署
  • 常州网站制作公司排名wordpress搬家文章
  • 织梦网站怎么做安全措施怎样做好网站运营
  • dede 手机站 怎么获取跳转网站长沙seo优化排名推广
  • 网站建设市场多大网站设计时应考虑哪些因素
  • 产品展示网站含后台网站模板下载不用收费的软件
  • 广东建设行业招聘 什么网站看网站是不是WP做的
  • 扬州做网站公司有哪些公司网站管理制度
  • 游戏网站建设视频教程中国舆情在线
  • 为什么要做网站优化国内的c2c网站有哪些
  • 网站风格怎么写网上国网app推广方案