无法通过本机调用函数

时间:2018-02-15 18:59:50

标签: javascript reactjs react-native

我收到一条错误消息,指出this2.sampleFunction不是对象,我尝试添加构造函数以及以前的解决方案。

export default class Play extends React.Component {

  sampleFunction() {
    console.log('Hello'); 
  }

  anotherFunction() {
    return (
      <Button
        onPress={() => this.sampleFunction.bind(this)} />
    );
  }

  render() {
    <Deck
      anotherFunction={this.anotherFunction()}
    />
  }
}

编辑:这是甲板组件中的代码,它主要是一个视图标签

  render() {
return (
  <View>
    {this.props.anotherFunction()}
  </View>
);
}

以下是错误的图片:error

1 个答案:

答案 0 :(得分:1)

我遇到了问题,这与我在评论中描述的相同。您正在将一个元素从Play传递到Deck,但Deck需要一个函数。请将Play的渲染方法更改为

render() {
    return (<Deck
      anotherFunction={this.anotherFunction.bind(this)}
    />);
}