RN无法识别state报错 bind()函数

RN无法识别state报错 bind()函数_第1张图片

RN开发中很多组件的属性这样写,正常,因为是通过React.createClass创建的组件会自动为closeModal绑定this,指定上下文。

若通过class extends React.Component方式所创建的组件这不能这样写,会报错。this.setState is not a function,this.setState is undefined.

RN无法识别state报错 bind()函数_第2张图片
RN无法识别state报错 bind()函数_第3张图片

只有改成如下的方式为函数绑定方法。onPressBackground={this._closeModal.bind(this)}

RN无法识别state报错 bind()函数_第4张图片

绑定函数的方式有两种:可以在调用函数的地方绑定,也可以在constructor方法里面绑定。

RN无法识别state报错 bind()函数_第5张图片

在一个函数的参数中,如果此函数没有返回值,则会在相关文档中之处传参的类型。没有返回值传函数进去的情况有两种:一直是直接填写函数进去(注意是否需要绑定),二是通过箭头函数(不需要绑定)。

RN无法识别state报错 bind()函数_第6张图片
RN无法识别state报错 bind()函数_第7张图片

你可能感兴趣的:(RN无法识别state报错 bind()函数)