简体   繁体   English

渲染没有返回任何内容

[英]Nothing was returned from render

I have this error:我有这个错误:

Nothing was returned from render.渲染没有返回任何内容。 This usually means a return statement is missing.这通常意味着缺少 return 语句。 Or, to render nothing, return null.或者,不渲染任何内容,返回 null。

My code :我的代码:

export default class Header_page extends Component {
  render() {
    return (
      <Header>
        <Left>
          <Button transparent>
            <Icon name='ios-menu' />
          </Button>
        </Left>
        <Body>
          <Title>{this.props.title}</Title>
        </Body>
        <Right>
          <View>
            {this.props.buttonRight}
          </View>
        </Right>
      </Header>
    );
  }
}

Header_page.propTypes = {
  title: PropTypes.string.isRequired,
  buttonRight: PropTypes.func,
}

I don't understand what wrong thanks我不明白有什么问题谢谢

Seems like this.props.buttonRight is declared as a function but you are not calling it, you should call it in your render() like so this.props.buttonRight() .似乎this.props.buttonRight被声明为一个函数,但你没有调用它,你应该在你的render()调用它,就像this.props.buttonRight() Make sure this.props.buttonRight() returns some JSX or null确保this.props.buttonRight()返回一些 JSX 或 null

Edit编辑

A little note: when passing a function which returns some component, I'd recommend you call it renderSomething , for example renderButton .一点注意:当传递返回某个组件的函数时,我建议您将其renderSomething ,例如renderButton If you pass a Component instead, call it something or button如果你传递一个组件,而不是,把它somethingbutton

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

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