refs的作用是什么,你在什么业务场景下使用过refs

作用是操作dom

场景:图片加载完以后获取图片的宽高

// window上添加事件监听后,组件销毁前需要移除

class Test extends React.Component {
  constructor(props){
    super(props);
    this.state = {
      top: 0
    }
    this.handleWindowScroll = this.handleWindowScroll.bind(this);
  }

  handleWindowScroll() {
    this.setState({
      top: document.body.scrollTop
    })
  }

  componentDidMount() {
    window.addEventListener(‘scroll‘, this.handleWindowScroll);
  }

  componentWillUnmount() {
    window.removeEventListener(‘scroll‘, this.handleWindowScroll);
  }

  render() {
    return <div>{this.state.top}</div>
  }
}

.

原文地址:https://www.cnblogs.com/crazycode2/p/12111696.html

时间: 2024-11-05 03:21:56

refs的作用是什么,你在什么业务场景下使用过refs的相关文章

fseek不起作用, 当文件fopen在a模式下

情景: FILE *fp = fopen(fileName, "a"); fprintf(fp, "hello,"); fseek(fp, -1, SEEK_CUR); fprintf(fp, "?"); fclose(fp); 输出: hello,? 在a模式下, 每次写人时会重新seek到文件尾部, 即使先前fseek到前面的某个位置.

Service层和DTO层的作用

Service层主要提供的几个作用:1.将业务逻辑层进行封装,对外提供业务服务调用.2.通过外观模式,屏蔽业务逻辑内部方法.3.降低业务逻辑层与UI层的依赖,业务逻辑接口或实现的变化不会影像UI层.4.降低UI层调用的请求次数及数据往返. DTO层主要提供的作用: 在上面的结构中,我们说了Service层的作用,目前还少加入了一层,DTO(数据传输对象层),该层负责屏蔽后端的实体层,将UI层需要的数据进行重新的定义和封装,在实际的业务场景下,后端实现或存储的数据远比用户需要的数据要庞大和复杂,所

PHP 数据库驱动、连接数据不同方式学习笔记

相关学习资料 http://www.php.net/manual/zh/refs.database.php http://www.php.net/manual/zh/internals2.pdo.php http://bbs.phpchina.com/thread-184537-1-1.html http://www.metsky.com/archives/660.html http://www.phpbuilder.com/ http://www.w3school.com.cn/php/php

React Native 从入门到原理

抛砖引玉(帮你更好的去理解怎么产生的 能做什么) 砖一.动态配置 由于 AppStore 审核周期的限制,如何动态的更改 app 成为了永恒的话题.无论采用何种方式,我们的流程总是可以归结为以下三部曲:"从 Server 获取配置 –> 解析 –> 执行native代码". 很多时候,我们自觉或者不自觉的利用 JSON 文件实现动态配置的效果,它的核心流程是: 通过 HTTP 请求获取 JSON 格式的配置文件. 配置文件中标记了每一个元素的属性,比如位置,颜色,图片 UR

团队默契与团队信任

团队默契.高效的团队必然是默契的,一起做事儿,你中有我,我中有你.在软件过程研发与测试关系也是这样,研发了解测试需要经历过程,测试了解研发需要完成程序设计,彼此了解可能遇到的问题,你没有做好时,我愿意拉一把.这就是默契.这样能成为最高效的研发与测试.实际上现实情况中,上下游的环节也是这样,从需求,设计,开发,测试到运维环环相扣,只有一起高效协作才能做成一件有影响力的事情.团队默契来自于基于智商表现出的情商,支撑团队执行力的,其实是团队智商.团队默契是最有战斗力的东西.默契体现了信任.团结.共同的

谈谈企业的数据工作!——企业的数据分析能力金字塔

写在前面 笔者写这篇文章的初衷源于两个故事: 故事一:一位在互联网行业做数据库架构多年的同事一起吃饭,问起我现在在说什么,我说自己在做医疗方面数据分析,同事笑,说:你有很多资源啊,只要你能拿到电子病例的数据,就能分析很多东西了--我脸上的微笑表情瞬间僵化! 故事二:当时为内蒙一个企业做上游原材料供应商的数据管理项目,当时我们拿到的只是该企业小部分供应商的数据,下一阶段计划拿到其全国供应商的相关数据给该企业进行管理支持.有一天,我们的项目负责人很兴奋,高兴地对我说:后面我们拿到所有供应商的数据后,

RabbitMQ 安装与使用

RabbitMQ 安装与使用 前言 吃多了拉就是队列,吃饱了吐就是栈 使用场景 对操作的实时性要求不高,而需要执行的任务极为耗时:(发送短信,邮件提醒,更新文章阅读计数,记录用户操作日志) 存在异构系统间的整合: 安装 下载 Erlang 安装完确定ERLANG_HOME环境变量是否添加,否则:Setx ERLANG_HOME "D:\Program Files\erl8.2″ 下载安装包 安装完通过rabbitmqctl status确定rabbitmq状态 管理服务 默认安装成功会自动启动服

iOS书写高质量代码之耦合的处理

原创 2016-12-26 MrPeak MrPeak杂货铺 耦合是每个程序员都必须面对的话题,也是容易被忽视的存在,怎么处理耦合关系到我们最后的代码质量.今天Peak君和大家聊聊耦合这个基本功话题,一起捋一捋iOS代码中处理耦合的种种方式及差异. 简化场景 耦合的话题可大可小,但原理都是相通的.为了方便讨论,我们先将场景进行抽象和简化,只讨论两个类之间的耦合. 假设我们有个类Person,需要喝水,根据职责划分,我们需要另一个类Cup来完成喝水的动作,代码如下: //Person.h @int

hive里的优化和高级功能

在一些特定的业务场景下,使用hive默认的配置对数据进行分析,虽然默认的配置能够实现业务需求,但是分析效率可能会很低. Hive有针对性地对不同的查询进行了优化.在Hive里可以通过修改配置的方式进行优化. 以下,几种方式调优的属性. 1.列裁剪 在通过Hive读取数据的时候,并不是所有的需求都要获取表内的所有的数据.有些只需要读取所有列中的几列,而忽略其他列的的数据. 例如,表Table1包含5个列Column1.Column2.Column3.Column4.Column5.下面的语句只会在