繁体   English   中英

React Native:在静态函数内访问组件状态

[英]React Native : Access Component state inside a static function

我有一个像这样定义的组件

export class A extends Component{
   constructor(props){
     this.state = {
        scene:0
     }
   }
  static changeScene(scene){
     this.setState({scene:scene})
  }
}

我想使用A.changeScene(sceneVal)从任何地方调用更改场景来更改A中的场景。问题是我无法访问this.setState我收到此错误Unhandled JS Exception: this.setState is not a function.

我确信A组件已经安装。 我可以通过定义一个全局变量var self = null;来绕过这个错误var self = null; 并在构造函数self = this中的构造函数,但我想要一个更好的方法来解决这个问题

原因是,如果你使用static function那么static方法将无法在该函数内访问this 你应该避免使用static功能。 Static方法必须的值,属性和上所述的实例中定义的方法没有访问class使用this

查看这篇文章: http//odetocode.com/blogs/scott/archive/2015/02/02/static-members-in-es6.aspx

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM