gpt4 book ai didi

javascript - 尝试在 React 中映射数组,但未定义

转载 作者:行者123 更新时间:2023-11-28 04:11:20 28 4
gpt4 key购买 nike

下面是我的渲染的一部分,然后是它引用的组件。我收到“li 未定义”。我尝试将其包装在 {} 中,但目前不确定我缺少什么。感谢您的帮助。

渲染部分:

var uls = _.chunk(_.take(this.state.results, maxICanShow), perColumn);

return (
<div>
uls.map((lis) => {
<ul className="appt_bd">
<li className="appt_bd_header" style={{ width: colWidth + '%' }}>
<span className="appt_bd_header_main">{this.props.title}</span>
<span className="appt_bd_header_sub">Appts Set</span>
<span className="appt_bd_header_sub">Appts Show</span>
</li>
lis.map((li) => <AppointmentBoardRow key={li.userId} row={li} />)
</ul>
})
</div>
);

这是它引用的组件:

var AppointmentBoardRow = React.createClass({
render: function () {
var row = this.props.row;
return (
<li className="appt_bd_row" style={{ width: this.props.colWidth + '%' }} key={row.userId}>
<span className="appt_bd_desc">
<span className="appt_bd_rank">{row.rank}</span>
<span className="appt_bd_avatar_container"><div className={row.className}><span className="initials">{row.initials}</span></div></span>
<span className="appt_bd_user">
<span className="appt_bd_description_main">{row.userName}</span>
<span className="appt_bd_description_sub">{row.role}</span>
</span>
</span>
<span className="appt_bd_data">
<span className="appt_bd_data_main">{row.apptsSetCount}</span>
<span className="appt_bd_data_sub">/{row.apptsSetGoal}</span>
</span>
<span className="appt_bd_data">
<span className="appt_bd_data_main">{row.apptsShowCount}</span>
<span className="appt_bd_data_sub">/{row.apptsShowGoal}</span>
</span>
</li>
);
}

});

最佳答案

您的第一个代码片段中似乎存在一些小语法错误。具体来说,调用uls.map是 html 语法中的 javascript,所以应该用 {} 包裹起来。这同样适用于 lis.map

此外,uls.map((lis) => { <ul>...</ul> }是一个不返回任何内容的函数。您可能想将其表示为 uls.map((lis) => ( <ul>...</ul> ) ,或uls.map((lis) => { return (<ul>...</ul>) } 。如果问题仍然存在,您可能想使用后者并设置一个调试器来弄清楚传入的数据到底发生了什么。

我尝试修复了上面提到的语法错误,希望这会有所帮助。

var uls = _.chunk(_.take(this.state.results, maxICanShow), perColumn);

return (
<div>
{
uls.map((lis) => (
<ul className="appt_bd">
<li className="appt_bd_header" style={{ width: colWidth + '%' }}>
<span className="appt_bd_header_main">{this.props.title}</span>
<span className="appt_bd_header_sub">Appts Set</span>
<span className="appt_bd_header_sub">Appts Show</span>
</li>
{ lis.map((li) => <AppointmentBoardRow key={li.userId} row={li} />) }
</ul>
)
}
</div>
);

关于javascript - 尝试在 React 中映射数组,但未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46246594/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com