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

手机网站关键词优化软件网站推广软件污

手机网站关键词优化软件,网站推广软件污,义马网站开发,区块链企业解决方案基本用法 在类组件中获取一个dom元素实例#xff0c;可以通过React.CreateRef或者回调函数的方式去获取。语法#xff1a;const refContainer useRef(initialValue);使用场景#xff1a;在 React 中进行 DOM 操作时#xff0c;用来获取 DOM作用#xff1a;返回一个带有 …基本用法 在类组件中获取一个dom元素实例可以通过React.CreateRef或者回调函数的方式去获取。语法const refContainer useRef(initialValue);使用场景在 React 中进行 DOM 操作时用来获取 DOM作用返回一个带有 current 属性的可变对象通过该对象就可以进行 DOM 操作了。 const inputRef useRef(null) 解释 参数在获取 DOM 时一般都设置为 null返回值包含 current 属性的对象。 注意只要在 React 的函数组件中进行 DOM 操作都可以通过 useRef Hook 来获取 DOM比如获取 DOM 的宽高等。注意useRef不仅仅可以用于操作DOM还可以操作组件 通过useRef获取DOM元素或组件实例 import React from react import {useRef} from reactexport default function UseRef() {let inputRef useRef()function login() {console.log(inputRef.current.value)}return (divinput ref{inputRef} placeholder{请输入账号} /button onClick{login}登录/button/div) } 绑定ref后和React.createRef返回的结构一致通过.current获取到元素。 useRef保存数据 在文件中定义一个全局变量保存数据 存在 bug UseRef.jsx import {useRef, useState} from react;let count 0;export default function UseRef() {console.log(ref)let inputRef useRef()function login() {count 1;}function printCount() {console.log(count)}return (divinput ref{inputRef} placeholder{请输入账号} /button onClick{login}登录/buttonbutton onClick{printCount}打印count/button/div) } 这种全局保存变量的方式有问题原因在于在组件中多次使用这个组件会共享数据可能会导致一些bug存在。 import UseRef from ./components/UseRefexport default function App() {return (divUseRef /UseRef //div) } 在函数组件中直接定义变量 存在 bug import {useRef, useState} from react;export default function UseRef() {let count 0;console.log(ref)let inputRef useRef()let [name, setName] useState(张三)function login() {count 1;}function printCount() {console.log(count)}return (divinput ref{inputRef} placeholder{请输入账号} /button onClick{login}登录/buttonbutton onClick{printCount}打印count/button姓名{name}button onClick{() setName(李四)}修改name/button/div) } 这种方式可以短暂的保存值但是一旦函数组件更新渲染那么这个变量的值就会重置 原因是因为函数组件更新渲染时代码从上往下重新运行。 使用useRef保存值 在整个生命周期里ref里存储的都是同一个这样就可以---- 解决闭包陷阱问题 import {useRef, useState} from react;export default function UseRef() {// let count 0;let count useRef(0);console.log(ref)let inputRef useRef()let [name, setName] useState(张三)function login() {// console.log(inputRef.current.value)count.current 1;}function printCount() {console.log(count.current)}return (divinput ref{inputRef} placeholder{请输入账号} /button onClick{login}登录/buttonbutton onClick{printCount}打印count/button姓名{name}button onClick{() setName(李四)}修改name/button/div) } 通过useRef保存值可以长期存贮不会重置 使用useRef定义变量的好处 修改state后ref保存的数据不会变化多个组件的数据不会共享类似于class的实例字段修改ref的保存值不会引起组件的更新渲染。 总结
http://www.hkea.cn/news/14437984/

相关文章:

  • 公司快速建站提升网站流量的方法
  • 万能站工具的企业网站系统爱看视频的网站
  • 南京外贸网站建站wordpress前台投稿插件
  • wap网站管理系统内链wordpress
  • 重庆建网站诚选快忻科技悉心软件工程专业就业前景
  • 对二次网站开发的认识怎样才能做好网络推广
  • 做哪类网站没有版权问题百度网盟推广案例
  • 网页设计与网站制作华为手机网站建设策划方案
  • 学做网站设计需要多少钱银川建设网站公司
  • 下载别人网站的asp槐荫区网络营销seo
  • 网站建设好弄吗百度app最新版本
  • app编程软件有哪些网址seo优化排名
  • idc网站模板淮南发布
  • 北京注册网站每天推荐新设计的网站
  • 做高档衣服的网站网站搭建工具视频
  • 做兼职做网站的是什么建站之星多语言
  • wordpress 名站高端网站开发 金蝶
  • 国内个人网站设计欣赏建立企业网站的形式有哪些
  • dede地方门户网站模板开封网站网站建设
  • 织梦手机网站模板删除中国企业招聘网
  • 东莞响应式网站建设定制头像设计
  • 网站建设好后怎样形成app网站开发技能介绍
  • .net 网站开发卓天商务怎么入驻
  • 成都网站游戏设计成都双语网站开发
  • 建网站 网站内容怎么做推广手段有哪些
  • 单页产品网站源码带后台长沙公司建设网站
  • 网站制作公司 云南建设网站申请书
  • 做文字云的网站北京建筑设计公司排行榜
  • 提供网站建设费用北京网站定制流程
  • 石家庄做网站裕华区响应式网站建设代理商