javascript - ReactJs if else 在渲染中

标签 javascript dom reactjs

有一些奇怪的情况至少对我来说很奇怪。到目前为止,我正在构建时间轴组件。如果用户时间线为空,我想呈现不同的 react 类 这是我做的部分代码

var Timeline = React.createClass({
getInitialState: function() {
    return {
        data: [],
        page: 0,
        loadingFlag: false
    }
},
loadTimelineFromServer: function() {
    var nextPage = this.state.page + 1;
    var url = this.props.url + '?page=' + nextPage;
    $.ajax({
        url: url,
        dataType: 'json',
        cache: true,
        success: function(response) {
            if (this.isMounted()) {
                this.setState({
                    data: this.state.data.concat(response.data),
                    loadingFlag: false,
                    page: nextPage
                });
            }
        }.bind(this),
        error: function(xhr, status, err) {
            console.error(this.props.url, status, err.toString());
        }.bind(this)
    });
},
componentDidMount: function() {
    this.loadTimelineFromServer();
},
render: function() {
    var items = this.state.data;
    var renderer;
    if (items.length) {
        renderer = <TimelineList data=items />
    } else {
        renderer = <EmptyTimeline />
    }

    return (
        <div>
        {renderer}
        </div>
    );
} 
});

EDIT : Firebug 引发的错误 错误:解析错误:第 71 行:JSX 值应该是表达式或引用的 JSX 文本 在 http://qfriends.dev/js/components/socialnetwork/user_timeline.js:71:20 ...指向这个<TimelineList data=items />

最佳答案

<TimelineList data=items />不是有效的 JSX。您应该使用花括号将 javascript 表达式作为 Prop 传递:<TimelineList data={items} /> .

关于javascript - ReactJs if else 在渲染中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31025645/

相关文章:

jQuery 动态 CSS 加载奇怪的行为

javascript - 如何用Javascript让Javascript运行在页面的最后一个进程

asp.net - JQuery/Javascript : Client side modification of asp.net datagrid 输出以允许 tablesorter 工作

JavaScript document.querySelector() 与 jQuery $() 方法相同吗?

javascript - react JS : How to retrieve a string variable from a function using componentDidMount()

javascript - 类型错误 : Cannot read property 'carts' of null

reactjs - 使用 React + Redux-ORM 的选择器。将数据传递给子组件

javascript - 如何构造 JavaScript 对象(使用 'apply' )?

javascript - 使用 backbone 和 require 的传单

javascript - 是否可以使用 javascript 确定卷轴的最终位置?如果是这样,如何?