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

有没有免费网站制作百度域名

有没有免费网站制作,百度域名,做模板下载网站挣钱吗,管理网络的软件有哪些什么是Hooks Hooks从语法上来说是一些函数。这些函数可以用于在函数组件中引入状态管理和生命周期方法。 React Hooks的优点 简洁 从语法上来说,写的代码少了上手非常简单 基于函数式编程理念,只需要掌握一些JavaScript基础知识与生命周期相关的知识不…

什么是Hooks

Hooks从语法上来说是一些函数。这些函数可以用于在函数组件中引入状态管理和生命周期方法。

React Hooks的优点

  1. 简洁
    从语法上来说,写的代码少了
  2. 上手非常简单
    • 基于函数式编程理念,只需要掌握一些JavaScript基础知识
    • 与生命周期相关的知识不用学,react Hooks使用全新的理念来管理组件的运作过程
    • 与HOC相关的知识不用学,React Hooks能够完美解决HOC想要解决的问题,并且更可靠
    • Mobx取代了Redux做状态管理
  3. 代码复用性更好
  4. 与Typescript结合更简单

React Hooks的缺点

  1. 状态不同步
    在异步操作的函数中访问的状态还是原来的状态的值
  2. useEffect依赖问题
    当useEffect依赖的数据变多后会导致频繁触发

React Hooks的注意事项

  1. 命名规范
    自定义Hooks的命名一律使用use作为前缀,形如:useXXX
  2. 仅在最外层调用React Hooks
  3. 仅从react函数中调用react Hooks
    在自定义Hooks或者组件中调用Hooks
useMemo

useMemo主要是用来实现性能优化的目的。

useMemo(callback,array):

  • callback:回调函数,用于处理逻辑
  • array:array中包含需要监听的依赖,当依赖值发生变化时,重新执行callback。

useMemo()会返回一个函数称之为memoized。

import React,{useMemo,useState} from 'react'const TestCom = React.memo(()=>{return <></>
});function App(){const [user,setUser] = useState({name:'hello',userSex;1})const filterSex = useMemo(()=>{return user.userSex === 1 ? '男' : '女'},[user]);return <><span>{filterSex}</span><TestCom></TestCom></>
}

只有当user触发更新的时候,才会重新触发filterSex内部的计算,这样就到达缓存性能优化的目的了。

注意事项
  • useMemo应该用于缓存函数组件中计算资源消耗较大的场景,因为useMemo本身就占用一定的缓存,在飞必要的场景下使用反而不利于性能的优化
  • 在处理量很小的情况下使用useMemo,可能会有额外的使用开销
useCallback

useCallback用于缓存一个函数,无论渲染多少次,函数都是同一个函数,这样可以减小不断创建新函数带来的性能和内存开销问题。

useCallback(callback,array):

  • callback:函数,用于处理逻辑
  • array:控制useCallback重新执行的数组,array内state改变时才会重新执行useCallback
import {useCallback,useState} from 'react'
function App(){const [state,setState] = useState('');const input = useCallback((e)=>{setState(e.target.value); },[]);return <><input onInput={(e)=>input(e)} /></>
}
注意事项
  • useCallback需要配合useMemo使用。这是因为React.memo方法会对props做浅层比较。如果props没有发生改变,则不会重新渲染。

自定义Hooks

自定义Hooks最重要的作用是逻辑复用,并非数据的复用,也不是UI的复用。

自定义Hooks就是声明一个函数,函数名根据命名规范以use作为开头,在函数内部可以使用任意内置Hooks。

import {useEffect}from 'react'
export default function useDomTitle(title){useEffect(()=>{document.title = title;        },[]);return;
}

使用自定义Hooks时,在需要使用的组件中导入Hooks

import useDomTitle from './hooks/useDomTitle'
function APP(){useDomTitle('hello');return <></>
}
注意事项
  • 减少useState的数量,使用较少的useState可以是Hooks的返回更容易,在组件中的实现更简单。
  • 有限考虑可读性
  • 合理拆分state对象中的内容
  • 合理使用Hooks的返回值
  • 合理拆分Hooks,不0
http://www.zhongyajixie.com/news/11167.html

相关文章:

  • 移动开发和网站开发厦门网页搜索排名提升
  • asp室内装修装潢网站源码手机怎么搭建属于自己的网站
  • html5网站建设企业论文seo好找工作吗
  • 徐州网站建设优化宣传北京百度总部电话
  • 如何查找昆明公司的网站企业网站seo方案
  • 如何做网站ip跳转视频剪辑培训班一般学费多少
  • 公司招聘做哪家网站推广资源网
  • 传新闻到网站上怎么做免费网络推广100种方法
  • 山阳网站建设网站建设教程
  • wordpress标签内链吉林seo管理平台
  • 地方网站如何做上海网站建设咨询
  • wordpress几个网站共用用户app运营方案
  • 宁波公司名称大全seo技巧分享
  • 企业网站报备优化电脑的软件有哪些
  • 哪些网站可以做外部锚文本视频外链平台
  • 一级建造师专业对照表武汉seo认可搜点网络
  • 做网站买空间广东seo网络培训
  • 动态网站建设优缺点免费写文章的软件
  • 足球比赛直播 视频直播百度seo和sem
  • dz网站建设教程软文代写发布
  • 美团这个网站多少钱做的企业网站设计素材
  • 新公司成立需要办理哪些手续优化手机流畅度的软件
  • 国外做螺栓比较好的网站阿里巴巴指数查询
  • 高端网站建设 磐石网络专注杭州seo网站排名优化
  • 彩票销信 网站怎么做网站怎么优化排名靠前
  • 一家做公司评估的网站游戏推广接单平台
  • 做外包网站搭建网络推广公司如何做
  • 手机网站建设请示微信朋友圈产品推广语
  • 想开发个网站百度客服怎么转人工
  • 室内设计效果图一套北京seo课程