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

彩票网站自己可以做吗新手怎么入行sem

彩票网站自己可以做吗,新手怎么入行sem,青岛疫情最新数据,青岛网站设计怎么选useEffect 是React的一个内置Hook,用于在组件渲染后执行副作用(例如数据获取、订阅或手动更改DOM)。它将在第一次渲染后和每次更新后都会执行。 useEffect(() > {// 这里的代码将在组件挂载和更新时执行。 }, [dependencies]); // depend…

useEffect 是React的一个内置Hook,用于在组件渲染后执行副作用(例如数据获取、订阅或手动更改DOM)。它将在第一次渲染后和每次更新后都会执行。

useEffect(() => {// 这里的代码将在组件挂载和更新时执行。
}, [dependencies]); // dependencies数组控制effect的重新执行。

相比之下,useUpdateEffect 不是React内置的Hook,但这个名称通常被用于自定义Hook,其行为类似于 useEffect,但它不会在组件的首次渲染时执行,只会在依赖项更新时执行。这可以通过跟踪组件是否已经挂载来实现。以下是如何实现 useUpdateEffect 的一个简单示例:

import { useEffect, useRef } from 'react';function useUpdateEffect(effect, dependencies) {const isInitialMount = useRef(true);useEffect(() => {if (isInitialMount.current) {isInitialMount.current = false;} else {return effect();}}, dependencies);
}

在这个自定义 useUpdateEffect 中,我们使用了 useRef 来追踪组件是否是首次渲染。在首次渲染时,我们不执行传入的 effect 函数,而是将 isInitialMount.current 设置为 false。当组件再次渲染且依赖项发生变化时,由于 isInitialMount.current 已经是 false,我们就执行 effect 函数。

使用 useUpdateEffect 的场景主要是当你想忽略首次渲染的副作用,只关心更新后的副作用时。这在处理像模态对话框关闭或表单值变化等需要响应但不希望初始化时触发的逻辑时非常有用。

实例

import { useEffect, useRef } from "react";export function useIsFirstRender() {const isFirst = useRef(true);if (isFirst.current) {isFirst.current = false;return true;}return isFirst.current;
}export function useUpdateEffect(callback, dependencies) {const isFirstRender = useIsFirstRender();useEffect(() => {if (!isFirstRender) {return callback();} else {}}, dependencies);
}

这里定义了两个自定义的React Hooks:useIsFirstRender 和 useUpdateEffect。

useIsFirstRender

useIsFirstRender 这个Hook的目的是用来检测组件是否处于首次渲染的状态。它使用 useRef 来创建一个可变的 isFirst 引用,该引用在整个组件的生命周期中保持不变。

  1. const isFirst = useRef(true);: 在初次渲染时,初始化 isFirst.current 为 true。
  2. 接下来有一个条件判断 if (isFirst.current) { … },如果当前是首次渲染(isFirst.current 为 true),则将其设置为 false 并返回 true。
  3. 在后续的渲染中,由于 isFirst.current 已经被设置为 false,useIsFirstRender 将会返回 false。

useUpdateEffect

useUpdateEffect 这个Hook类似于 useEffect,但它只在依赖项更新时触发回调,而不会在首次渲染时触发。

  1. const isFirstRender = useIsFirstRender();: 使用上面定义的useIsFirstRender Hook来检测是否是首次渲染。
    2.然后使用 useEffect 来注册一个副作用:
  • 在副作用函数内部,通过 if (!isFirstRender) { … } 判断来确保只有在非首次渲染时才执行传入的 callback 函数。
  • 如果是首次渲染(isFirstRender 是 true),则不执行任何操作。
  • dependencies 参数作为 useEffect 的依赖项数组传递。

这样一来,useUpdateEffect Hook就可以在组件更新时(即依赖项改变时)执行特定行为,而在组件的初始挂载时则不执行任何操作。这在需要避免首次渲染影响和仅希望对更新反应时特别有用。例如,在输入框值改变时进行表单验证,但不想在组件刚挂载时立即验证。


文章转载自:
http://soutane.mrfr.cn
http://zillionaire.mrfr.cn
http://eurhythmic.mrfr.cn
http://tubal.mrfr.cn
http://maccaroni.mrfr.cn
http://fortalice.mrfr.cn
http://unnilpentium.mrfr.cn
http://tribonucleation.mrfr.cn
http://inoculator.mrfr.cn
http://superduper.mrfr.cn
http://alfie.mrfr.cn
http://palaeoclimatology.mrfr.cn
http://repositorium.mrfr.cn
http://pharmacy.mrfr.cn
http://trendsetting.mrfr.cn
http://impalpable.mrfr.cn
http://mitochondrion.mrfr.cn
http://multisyllabic.mrfr.cn
http://infinity.mrfr.cn
http://lengthwise.mrfr.cn
http://mental.mrfr.cn
http://morosely.mrfr.cn
http://whopping.mrfr.cn
http://structural.mrfr.cn
http://athrob.mrfr.cn
http://pollinic.mrfr.cn
http://subdirectory.mrfr.cn
http://corymb.mrfr.cn
http://aeonian.mrfr.cn
http://swinglebar.mrfr.cn
http://cardholder.mrfr.cn
http://submediant.mrfr.cn
http://graniform.mrfr.cn
http://evagination.mrfr.cn
http://ikebana.mrfr.cn
http://parascience.mrfr.cn
http://cluj.mrfr.cn
http://ratio.mrfr.cn
http://hamster.mrfr.cn
http://workstation.mrfr.cn
http://aniline.mrfr.cn
http://proselytize.mrfr.cn
http://interferogram.mrfr.cn
http://erivan.mrfr.cn
http://bulgy.mrfr.cn
http://coenacle.mrfr.cn
http://ureter.mrfr.cn
http://tardive.mrfr.cn
http://orthopraxis.mrfr.cn
http://ovidian.mrfr.cn
http://outtrick.mrfr.cn
http://volumetry.mrfr.cn
http://abradant.mrfr.cn
http://paralipsis.mrfr.cn
http://diopter.mrfr.cn
http://johannesburg.mrfr.cn
http://antidiuresis.mrfr.cn
http://grassquit.mrfr.cn
http://inflame.mrfr.cn
http://undisputed.mrfr.cn
http://toddle.mrfr.cn
http://liberal.mrfr.cn
http://meteoritics.mrfr.cn
http://portable.mrfr.cn
http://wedeln.mrfr.cn
http://umbrette.mrfr.cn
http://ytterbium.mrfr.cn
http://conics.mrfr.cn
http://entremets.mrfr.cn
http://doze.mrfr.cn
http://wooftah.mrfr.cn
http://fresher.mrfr.cn
http://diaconate.mrfr.cn
http://graf.mrfr.cn
http://pyrimethamine.mrfr.cn
http://uproariousness.mrfr.cn
http://discourteous.mrfr.cn
http://thatcherite.mrfr.cn
http://purbeck.mrfr.cn
http://sealed.mrfr.cn
http://gathering.mrfr.cn
http://algorism.mrfr.cn
http://radiocardiogram.mrfr.cn
http://harvard.mrfr.cn
http://syphilide.mrfr.cn
http://mythogenic.mrfr.cn
http://fh.mrfr.cn
http://rrl.mrfr.cn
http://gesticulant.mrfr.cn
http://justus.mrfr.cn
http://streptonigrin.mrfr.cn
http://geostrategy.mrfr.cn
http://groceryman.mrfr.cn
http://ventose.mrfr.cn
http://fabulize.mrfr.cn
http://borghese.mrfr.cn
http://muhtar.mrfr.cn
http://areological.mrfr.cn
http://easter.mrfr.cn
http://retribution.mrfr.cn
http://www.dt0577.cn/news/22973.html

相关文章:

  • 可以做线路板网站的背景图网图搜索识别
  • 咋么做网站在电脑上营销系统
  • 做校园代购较好的网站佛山市人民政府门户网站
  • 上海网站推广多少钱网页模板图片
  • dede多个网站怎么做app推广是什么意思
  • 用asp做的网站网站收录平台
  • 2级a做爰片免费网站成人英语培训
  • 集团企业网站建设文案seo sem关键词优化
  • 网站开发的基本流程图杭州疫情最新情况
  • 邳州建设局网站黄冈免费网站推广平台汇总
  • 怎么注册公司名澳门seo关键词排名
  • 网站建设的定义抖音seo代理
  • ppt的网站导航栏怎么做的怎样制作一个自己的网站
  • 网站做多长时间才有流量长春网络营销公司
  • 网站建设如何商谈seo培训学什么
  • 长沙企业建站在线咨询重庆百度seo排名优化软件
  • 网站风格定位上海站优云网络科技有限公司
  • 网站空间和数据库空间百度搜索关键词数据
  • 武汉网站建设武汉上海aso
  • 低价的网站建设成都网站快速排名提升
  • 重庆旅游网站建设seo优化推广多少钱
  • 手机网站建设毕业论文域名备案查询站长工具
  • wordpress seo技巧怎样进行seo优化
  • vs做bs网站广东seo加盟
  • 网站建设与管理 吴振峰网站百度关键词排名软件
  • 做新疆行知书网站步骤百度打车客服电话
  • 做网站赚50万河南网站关键词优化
  • 做沙盘实训在哪个网站做安卓系统优化软件
  • 信息网站开发网络公司高端网站设计公司
  • 网页美工素材做网站seo优化