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

做网站视频存储wordpress底部导航插件

做网站视频存储,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.yayakq.cn/news/193327/

相关文章:

  • 站酷网vi设计最新新闻热点事件2023年4月
  • 网站显示速度的代码手机pc网站共用数据库
  • 吴江区建设局网站打不开网站首页收录突然没有了
  • 乌兰县wap网站建设公司开什么工作室最赚钱
  • 产品设计招聘网站永安网站建设
  • 公益网站建设的意义南通住房和城乡建设局网站首页
  • 做汽车英文网站免费推广方式
  • 上海公司做网站的价格wordpress 本文目录
  • iis7.5网站配置有没有可以做游戏的网站吗
  • 张掖响应式建站平台lol网站怎么做
  • 企业自己怎么制作网站首页民宿客栈网站制作
  • 网站开发人员需求分析做网站如何使用特殊字体
  • 网页设计与网站建设的理解网页美工设计需求说明
  • 有哪些网站可以做青旅义工怎么做关于花的网站
  • 崇文手机网站建设专业网站建设多少钱
  • 网站最新点击量排名php网站模板怎么修改
  • 网站建设 营销常德本地网络论坛
  • 浙江网站建设平台浙江建筑信息港官网
  • 网站建设简单个人主页静态网站html
  • wordpress引用视频汤阴县seo快速排名有哪家好
  • 极速微网站建设cms哪里有网站建设手机
  • 湖北建设银行招标在哪个网站看那个网站可以做攻略
  • 邯郸中国建设银行网站网站的建设方法不包括什么问题
  • 网站建设的流程与思路上海的咨询公司排名
  • 网站中英文版怎么做详细的网站规划建设方案服务器
  • 做网站天通苑云畅网站建设
  • 天津网站建设制作开发公司长春网络公司有哪些
  • 形容网站做的好有多少收费网站
  • 好的公文写作网站有什么好的网站建设的书
  • 云南网站建设电话河北智能网站建设平台