null不是getInitialState()react-native中的对象

时间:2016-05-03 08:16:12

标签: reactjs react-native

我很新做出反应原生并得到一个错误,因为'null不是对象(评估'this.state.pan')'

,代码是:

getInitialState: function(){
return{
  pan : new Animated.ValueXY(),
  panResponder: PanResponder.create({
    onStartShouldSetPanResponder: () => true,
    onPanResponderMove: Animated.event([null,{
      dx : this.state.pan.x,
      dy : this.state.pan.y
    }]),
    onPanResponderRelease: (e,gesture)
  })
}
}

有人能告诉我粗体文字有什么问题吗?

1 个答案:

答案 0 :(得分:3)

您指的是' getInitialState方法中的this.state。但是,这个状态'只有在' getInitialState'之后才有值被称为。但是你可以这样做。

getInitialState: function(){
  var panValue = new Animated.ValueXY();
  return{
    pan : panValue,
    panResponder: PanResponder.create({
    onStartShouldSetPanResponder: () => true,
    onPanResponderMove: Animated.event([null,{
      dx : panValue.x,
      dy : panValue.y,
    }]),
    onPanResponderRelease: (e,gesture)
  })
}
}