我有一个函数,我将返回一个变量以创建列表项。该函数愉快地返回无序列表,但不返回我要为其填充的项目。对于我为什么会出错的一些指导,我将不胜感激。

Header.js

export class Header extends Component  {

    constructor () {
        super();
    }

    NavMenu () {

       let links = () => (

           <li>hey</li>
    );

     return (
         <ul className="nav navbar-navs">
             {links}
         </ul>
       );
    }

    render() {
        return (
                <div className="container-fluid">
                            {this.NavMenu()}
                </div>
        )
     }

   }

   export default Header;


谢谢 :)

最佳答案

links是一个返回Element的函数。您应该像links()这样称呼它



class Header extends React.Component  {

    constructor () {
        super();
    }

     NavMenu () {

       let links = () => (

           <li>hey</li>
    );

     return (
         <ul className="nav navbar-navs">
             {links()}
         </ul>
       );
    }

    render() {
        return (
                <div className="container-fluid">
                            {this.NavMenu()}
                </div>
        )
     }

 }
 ReactDOM.render(<Header/>, document.getElementById('app'));

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>
<div id="app"></div>

10-07 19:15
查看更多