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

百度SEO是谁做的网站万网是做什么的

百度SEO是谁做的网站,万网是做什么的,哪些网站专门做动漫的,做网站网络营销注意有组件如下,上面变化秒数, 下面是大量计算的子组件,上面每一秒钟变化一次,这时候子组件会不断重新渲染, 浪费资源 父组件如下 import React, { memo, useEffect, useMemo, useState } from react; import type { ReactNode, FC } from react; import HugeCount from ./Te; int…

 有组件如下,上面变化秒数, 下面是大量计算的子组件,上面每一秒钟变化一次,这时候子组件会不断重新渲染, 浪费资源

父组件如下

import React, { memo, useEffect, useMemo, useState } from 'react';
import type { ReactNode, FC } from 'react';
import HugeCount from './Te';
interface IProps {children?: ReactNode;
}const template: FC<IProps> = () => {const [time, setTime] = useState(new Date());useEffect(() => {console.log('渲染主体组件');setTimeout(() => {setTime(new Date());}, 1000);}, [time]);return (<div>{time.getSeconds()}<HugeCount  /></div>);
};export default memo(template);

子组件如下

import React, { memo, useEffect, useMemo, useState } from 'react';
import type { ReactNode, FC } from 'react';interface IProps {children?: ReactNode;data: {};bad: any;
}const template: FC<IProps> = (props) => {const [num, setNum] = useState(100);const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {setNum(Number(e.target.value));props.bad();};const hugeCount = () => {console.log('大量计算');return num;};const result = useMemo(hugeCount, [num]);// const result = useMemo(()=>hugeCount(), [num]);useEffect(() => {console.log('渲染大量计算组件');});return (<div><input type='text' onChange={(e) => handleChange(e)} /><div>大量计算结果:{result}</div></div>);
};export default template;

 什么是纯组件?

组件 的核心特性是避免不必要的渲染,它通过浅比较 propsstate 来决定是否更新 UI。纯组件本身不抑制副作用,它只是优化了渲染的过程。

先说state, 大量计算的子组件的state并未变化, 所以理应不变, 这时候先优化自身导出,用memo

这时候可了, 再说props,我在父组件传这个给子组件,然而秒数刷新子组件重新渲染,为什么

  const data = {name:"23"}

因为这个是引用类型,父组件秒数变化时刷新页面, 这个data会重新生成地址,所以props变了,子组件就刷新 ,那怎么办?

用useMemo,或者useState, 这2有缓存功能

 const [data, setData] = useState(33);

同理,你想传函数, 用useCallback,不然父组件重新渲染, 你子组件收到的函数是新的地址!! 然后重新渲染, 浪费性能

  function bad() {console.log('hahah');}const badFun = React.useMemo(() => bad, []);

 



小useMemo细节,2种写法都可, 前者比如是一个无参数, 后者可传参

  const result = useMemo(hugeCount, [num]); const result = useMemo(()=>hugeCount(), [num]); 

http://www.yayakq.cn/news/550583/

相关文章:

  • 网站建设中需要注意的问题昆明企业建网站多少钱
  • 网站为什么做微云的采集关键词seo排名怎么样
  • 做系统用哪个网站好一个公司能备案几个网站
  • 室内设计网站推荐知乎国外优秀展厅设计
  • 青海网站建设公司电话如何建CMS网站
  • 厦门做外贸网站跨境外贸是做什么的
  • 网站头部特效大淘客网站商品做淘口令
  • 简单电商网站模板下载答辩ppt模板
  • 网站的建设与维护工资网站推广优化外包公司哪家好
  • 建设新网站网页设计与制作教程实习
  • 门店营销活动策划方案渗透网站做seo
  • 如何做地图的ppt模板下载网站熊撑号怎么做网站推广
  • 做网站模块加盟网络营销推广公司
  • asp网站和php网站的区别如何做贷款网站
  • 品牌网站建设重點大蝌蚪缅甸新闻最新消息
  • 移动网站开发框架网络推广策划书
  • 个人网站免费制作平台淘宝客网站做app
  • 国内做微商城比较知名的网站百度seo指南
  • 建设网站进行商品营销的重要性学做网站需要什么条件
  • 扬州网络推广哪家好济南百度seo
  • 做网站专题的软件网站建设制作微商授权书
  • 网站开发客户的思路总结旅游网站内容规划特点
  • 网站开发实施方案网络推广员的工作内容
  • 手机上网网站建设自己做的网站怎么放视频教程
  • 抖音seo排名系统公司seo网站建设价格
  • 嘉兴信息网站笔趣阁建站教程
  • wordpress自动广告位衡阳seo网站推广
  • 福州市有哪些制作网站公司王府井网上商城官网
  • 网站建设费用表格个人dw网页设计
  • 一个备案可以做几个网站吗陕西省建设网三类人员公示