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

装修网站设计案例镇江网站关键字优化

装修网站设计案例,镇江网站关键字优化,8080端口wordpress,起名字大全免费react useRef使用与常见问题 文章目录 react useRef使用与常见问题1. Dom操作: useRef()2. 函数组件的转发: React.forwardRef()3. 对普通值进行记忆, 类似于一个class的实例属性4. 结合useEffect,只在更新时触发FAQ 1. Dom操作: useRef() // 1. Dom操作: useRef()let app doc…

react useRef使用与常见问题

文章目录

  • react useRef使用与常见问题
    • 1. Dom操作: useRef()
    • 2. 函数组件的转发: React.forwardRef()
    • 3. 对普通值进行记忆, 类似于一个class的实例属性
    • 4. 结合useEffect,只在更新时触发
    • FAQ

1. Dom操作: useRef()

    // 1. Dom操作: useRef()let app = document.querySelector('#app');let root = ReactDOM.createRoot(app);let { useState, useEffect, useRef } = React;let Welcome = (props) => {const myRef = useRef()const handleClick = () =>{myRef.current.focus()}return (<div><button onClick={handleClick}>点击</button><input ref={myRef} type='text' /></div>);}let element = (<Welcome />);root.render(element);

2. 函数组件的转发: React.forwardRef()

      // 2. 函数组件的转发: React.forwardRef()let app = document.querySelector('#app');let root = ReactDOM.createRoot(app);let { useState, useEffect, useRef, forwardRef } = React;let Head = forwardRef((props, ref)=> {return (<div>hello Head{/*将 ref 转发到子组件的input上 */}<input ref={ref} type='text' /></div>)})let Welcome = (props) => {const myRef = useRef()const handleClick = () =>{// 点击时候会触发子组件的focus事件myRef.current.focus()}return (<div><button onClick={handleClick}>点击</button>{/*ref 和组件关联*/}<Head ref={myRef}></Head></div>);}let element = (<Welcome />);root.render(element);

3. 对普通值进行记忆, 类似于一个class的实例属性

 // 3. 对普通值进行记忆, 类似于一个class的实例属性let app = document.querySelector('#app');let root = ReactDOM.createRoot(app);let { useState, useEffect, useRef } = React;let Welcome = (props) => {// 响应式数据,具有记忆功能,点击后响应式数据加1const [num, setNum] = useState(0);// let count = 0; // 普通的count不具有记忆功能const count = useRef(0) // 可以给普通值进行记忆操作const handleClick = () =>{count.current++;console.log(count.current);setNum(num + 1)// console.log(num); // 还是之前的值}return (<div><button onClick={handleClick}>点击</button></div>);}let element = (<Welcome />);root.render(element);

4. 结合useEffect,只在更新时触发

 // 4. 结合useEffect,只在更新时触发let app = document.querySelector('#app');let root = ReactDOM.createRoot(app);let { useState, useEffect, useRef } = React;let Welcome = (props) => {// 响应式数据,具有记忆功能,点击后响应式数据加1const [num, setNum] = useState(0);const isUpdate = useRef(false) useEffect(()=>{// 只在点击时候触发if (isUpdate.current) {console.log(num);}})const handleClick = () =>{setNum(num + 1)isUpdate.current = true// console.log(num); // 还是之前的值}return (<div><button onClick={handleClick}>点击</button></div>);}let element = (<Welcome />);root.render(element);

FAQ

https://zh-hans.legacy.reactjs.org/docs/hooks-faq.html#why-am-i-seeing-stale-props-or-state-inside-my-function

http://www.yidumall.com/news/96591.html

相关文章:

  • 专门 做鞋子团购的网站有哪些优化推广网站怎么做最好
  • 企业公司网站建设某个网站seo分析实例
  • 校园门户网站建设实施方案海南百度推广公司
  • 大学生兼职网站开发毕设论文电商产品推广方案
  • 珠海网站建设公司网站pc优化工具
  • 构建动态网站百度竞价排名广告
  • 美工素材网站湛江百度seo公司
  • 网站怎么样制作视频广西网站建设制作
  • 余姚做网站首荐荣盛网络百度竞价排名费用
  • 网站建设的目标和需求google seo是什么意思
  • 沙河做网站手机网站模板建站
  • 建设一个网站需要郑州网络营销推广
  • wordpress模板建站网站浏览器
  • dart语言做的网站市场营销活动策划方案
  • 黄冈市住房和城乡建设委员会网站seo外包多少钱
  • 做网站的文案怎么写常州seo建站
  • 莱芜都市人才网seo排名
  • 重庆高端网站设计公司重庆优化seo
  • 网站的开发与维护1688的网站特色
  • 河北平台网站建设推荐nba最新赛程
  • 飞卢盗版做的最好的网站武汉seo推广
  • 淘宝网站基础建设 托管百度推广有效果吗?
  • 电商站点是什么意思seo兼职怎么收费
  • 邯郸论坛官网优化大师破解版app
  • 好游快游app官方网站下载seo网站自动发布外链工具
  • 建立网站需要服务器吗百度seo优化排名软件
  • 网站 搭建 亚洲服务器企业网站开发
  • 东营做网站福建百度代理公司
  • 网站注销申请seo门户网价格是多少钱
  • 个人备案怎么做旅游网站什么平台可以推销自己的产品