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

建设一个旅游网站网络营销心得体会

建设一个旅游网站,网络营销心得体会,天元建设集团有限公司济南第六建筑工程公司,徐州网站制作费用一、理解什么是Hooks 在React中#xff0c;Hooks其实就是一个函数#xff0c;这个函数的命名以use开头、函数return一个结果#xff1b;React Hooks其实就是封装了一些通用的、公共的方法#xff0c;就是一些通用的工具。 二、React Hooks分为官方Hooks和自定义Hooks 官…一、理解什么是Hooks 在React中Hooks其实就是一个函数这个函数的命名以use开头、函数return一个结果React Hooks其实就是封装了一些通用的、公共的方法就是一些通用的工具。 二、React Hooks分为官方Hooks和自定义Hooks 官方Hooks是指React官方推荐的一些Hooks如useState、useEffect、useContext、useRef、useMemo、useCallback、useReducer、...... 1.useState让React函数组件也可以使用状态使用方法const [ age, setAge ] useState(35). 2.useEffect在React函数组件里没有组件生命周期这一说法所以可以使用useEffect来替代组件生命周期使用方法如下 useEffect( () {window.addEventListener(message, handleMessage );return () {window.removeEventListener(message, handleMessage );} }, [] ) useEffect接收的一个回调函数相当于是componentDidMount和componentDidUpdate回调函数return的这一个回调相当于是componentWillUnmountuseEffect接收的第二个数组是依赖项如果只是模拟组件生命周期可以传空数组通常这个依赖项不要传入过多或过于复杂因为当依赖项发生变化useEffect中的回调函数会重新执行。 3.useContext用于父组件向子组件的跨级传参使用比较简单直接参考官方文档即可。 4.useRef绑定元素ref通常用于调用子组件身上的方法this.formRef.current.doReq()...。 5.useMemo用于缓存函数的计算结果与Vue中的计算属性类似使用方法如下 const result useMemo( () {const res a b;return res; }, [a,b] ) useMemo的第二个参数为依赖项数组依赖项发生变化则重新计算结果。 6.useCallback缓存函数缓存函数地址通常与React.memo()一起使用React.memo()是通过校验props中的数据是否改变的来决定组件是否需要重新渲染的一种缓存技术具体点说React.memo()其实是通过校验Props中的数据的内存地址是否改变来决定组件是否重新渲染组件的一种技术。useCallback通常用于缓存父组件向子组件传递的函数当父组件发生变化时会重新渲染此时若变化与子组件无关子组件不应重复渲染useCallBack并不能阻止函数重新创建,它只能通过依赖决定返回新的函数还是旧的函数,从而在依赖不变的情况下保证函数地址不变。其使用方法如下 import {useCallBack,memo} from react;const Parent ( props ) {const [parentData, setParentData] useState(66); const toChildFun useCallBack( () {console.log(需要传入子组件的函数);}, [])return (divButton onClick{() setParentState(val val1)}点击改变父组件中与Child组件无关的state/ButtonChild fun{toChildFun}/Childdiv) }const Child memo(( props ) {console.log(子组件渲染了);return div子组件div } ) 7.useReducer相当于写redux直接根据官方文档进行使用。 官方文档里还有一些其他的Hooks其实使用起来都比较方便直接看文档使用就行了在这里就列举以上几种常用的官方Hooks。 自定义Hooks其实就是根据自己的开发需求封装一些通用的、公共的工具函数使用起来其实就和官方推荐的Hooks是一样的。 自定义 Hooks 允许共享有状态逻辑而不是状态本身例如 import { useState } from react; // 自定义Hooks function useCounter(initialValue) {const [count, setCount] useState(initialValue);function increment() {setCount(count 1);}return [count, increment]; }// 在其他组件进行使用 import useCounter from ./useCounter; function Counter() {const [count1, increment1] useCounter(0);const [count2, increment2] useCounter(100);return (divpCount1: {count1}/pbutton onClick{increment1}Increment1/buttonpCount2: {count2}/pbutton onClick{increment2}Increment2/button/div); } 当我们点击 Increment2 时并不会影响 count1 ,因为每一个 useCounter 的调用都是独立的其内部状态也是独立的。 三、React Hooks使用方法 1.只能在函数外层调用 Hook不要在循环、条件判断或者子函数中调用。 2.只能在 React 的函数组件顶部和自定义 Hook 中调用 Hook。不要在其他 JavaScript 函数中调用。 3.在组件中 React 是通过判断 Hook 调用的顺序来判断某个 state 对应的 useState的所以必须保证 Hook 的调用顺序在多次渲染之间保持一致React 才能正确地将内部 state 和对应的 Hook 进行关联。 四、用Hooks替代一些高阶组件会更有优势 假如现在我们要让多个组件复用一个基于状态的逻辑公共方法 1.使用高阶组件 import { Table } from antd import server from ./serverfunction useTable(server) {return function (WrappedComponent) {return class HighComponent extends React.Component {state {tableProps: xxx, };render() {const { tableProps } this.state;return WrappedComponent tableProps{tableProps} /;}};}; }useTable(server) class App extends Component{render(){const { tableProps } this.props;return (Table columns{[...]}{...tableProps}/)} } 2.使用Hooks import { Table } from antd import server from ./apifunction useTable(server) {const [tableProps, setTableProps] useState(xxx);return tableProps; }function App {const { tableProps } useTable();return (Table columns{[...]}{...tableProps}/) } 使用Hooks可以减少组件树的层级防止组件深度嵌套同时代码也更少更简洁。
http://www.yutouwan.com/news/265317/

相关文章:

  • 湖南建设厅网站证书查询中华建设
  • 鼎豪网络网站建设游戏是怎么开发出来的
  • 在线注册网站白头鹰网站一天可以做多少任务
  • 苏州企业如何建网站企业网站建设推荐兴田德润
  • 山西太原做企业网站建设的公司html5网页模板免费
  • 高港网站开发制作照片的软件app
  • 锦州网站建设多少钱建设部机关服务中心网站
  • 企业网站模板下载哪家公司强方案计划网站
  • 云教育科技网站建设网站图片少影响seo吗
  • 眉县住房和城市建设局网站特殊教育学校网站建设方案
  • 网站的ico怎么做做微信的微网站费用多少
  • 内蒙古网站建设云聚郑州网站建站网站
  • 网站建设的服务和质量网站如何做前后端分离
  • 住房和城乡建设部文化中心网站企业seo顾问服务
  • 临湘网站建设兼积做调查挣钱网站
  • 网站建设有哪些文件wordpress 下一篇样式
  • 长沙建设局网站建设网站需要电脑配置
  • 江苏鑫圣建设工程有限公司网站开发app费用
  • 用asp做网站需要安装什么软件短视频营销策略有哪些
  • 大连建网站网站制作亿达城市建设官方网站
  • 东莞网站推广优化搜索推广网站建设中需求分析报告
  • 做网站需要什么人员百度热搜榜单
  • 兰州网站制作要多少钱静态网页模板源代码
  • 产品网站设计论文做网站应聘平台
  • 天津做淘宝网站杭州 兼职 网站建设
  • 简述对网站进行评析的几个方面.网页设计与制作教程代码
  • 网站运营方案书广告制作安装工
  • 南阳网站建站公司wordpress 栏目设置
  • 网站排名软件推荐做网站时怎样申请域名
  • 给素材网站做素材方法网站是否备案怎么查询