javascript - react如何获取offsetX?
问题描述
1.在react中如何获取元素的offsetX呢?
我的思路是通过this.state.offsetX获取,但是this确是null
2.react中可以初始化一个组件的某些状态,但是我这样写getInitialState在控制台却出现了warning错误。提示如下图:
具体代码如下
问题解答
回答1:1、es6写法下。初始化默认state是在constructor中进行
constructor() { super(); this.state = { }}
2、事件回调函数中如果要用this,需要手动bind
// 方法1this.moveElment.bind(this);// 方法2moveElement = event => {}// 方式3<p onMouseEnter={() => this.moveElement}></p>回答2:
getInitialState 是 ES5 里的写法.在 ES6 里, 应该把 state 初始化放到 constructor 里.
class Demo extends Component{ constructor(){super(); // 必须先调用super, 后面才能用 this this.state = {} }}回答3:
错误写的很明白, 只有在使用
React.createClass()
的时候才可以使用getInitialState,在使用ES6的class关键字创建时使用
this.state = {}
相关文章:
1. python - 求一个在def中可以实现调用本def满足特定条件continue效果的方法(标题说不太清楚,请见题内描述)2. $fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题3. 求一个mySQL安装包4. javascript - mysql插入数据时怎样避免与库中的数据重复?5. mysql数据库做关联一般用id还是用户名6. MySQL中的enum类型有什么优点?7. MySQL 这句 创建表结构语句的错误在哪?8. node.js - 我想让最后进入数据库的数据,在前台最先展示,如何做到?9. 数据库设计 - MySQL数据库主键问题10. MySQL能否给某个字段的值设置有效期?
![$fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题](http://www.haobala.com/attached/image/news/202205/093622cb60.png)