小编bar*_*zag的帖子

为什么ES6反应类需要绑定

在新的React ES6中,this需要按照此处所述绑定类:http://facebook.github.io/react/blog/2015/01/27/react-v0.13.0-beta-1.html#autobinding for eg:

class Counter extends React.Component {
  constructor() {
    super();
    this.tick = this.tick.bind(this);
  }
  tick() {
    ...
  }
  ...
}
Run Code Online (Sandbox Code Playgroud)

对此的解释是因为它是默认行为,但是如果我创建一个ES6类然后我创建它的新实例this将被绑定

import React from 'React'

class Test extends React.Component {
    constructor() {
      super()
    }
    foo () {
      console.log('bar')
    }
    hello() {
      this.foo()
    }
}

var test = new Test()
test.hello()
// > bar
Run Code Online (Sandbox Code Playgroud)

为什么React需要绑定呢?

javascript reactjs

6
推荐指数
1
解决办法
238
查看次数

标签 统计

javascript ×1

reactjs ×1