2017-02-22 15 views
1

不是将所有东西都放到一个渲染函数中,而是尝试创建函数,但它没有出现。我究竟做错了什么?使用函数渲染组件不起作用?

var dashboard = React.createClass({ 

    render: function() { 
     return (
      <div> 
       <Datepicker /> 
       {this.renderDate()} //why this render nothing? 
      </div> 
     ); 
    } 

    renderDate(){ 
     <Datepicker /> 
    } 

}); 

module.exports = dashboard; 
+0

* “为什么这个渲染什么*?” 因为'renderDate ()'返回'undefined',基本上什么也没有。这与React btw无关,JavaScript是如何工作的。 –

回答

2

您的renderDate方法必须返回一个组件。试试这个

renderDate(){ 
    return (
     <Datepicker /> 
    ); 
} 
0

功能renderDate()是错误的,并与renderDate(),缺乏,应该是这样的:

var dashboard = React.createClass({ 
 

 
    render: function() { 
 
     return (
 
      <div> 
 
       <Datepicker /> 
 
       {this.renderDate()} 
 
      </div> 
 
     ); 
 
    }, 
 

 
    renderDate(){ 
 
    return <Datepicker />; 
 
    } 
 

 
}); 
 

 
var Datepicker = React.createClass({ 
 

 
    render: function() { 
 
     return (
 
      <div> 
 
      Datepicker content 
 
      </div> 
 
     ); 
 
    } 
 

 
});