我需要使用具有特定属性的地图来显示元素。
我的代码显示所有项目对象的属性。
const {report, info} = this.state;
const max = this.state.info.map((info, index) =>
<DonateReport key={index} title={info.title} opened={info.opened}
onClick={() => this.toggleInfo(index)}>
{report.map(({item}) => ( //<--HERE
<h2 >{item.donaters_count}</h2>
))}
</DonateReport>
);
请告诉我如何显示具有以下参数的属性:item.month == info.key
也许还有办法解决这个问题...
非常感谢您的帮助。请不要发誓,第二天我真的在解决这个问题
答案 0 :(得分:0)
如果您展示自己想做的事情,我认为这会有所帮助。 我了解您正在尝试根据月份过滤显示的属性。我可能是错的
const {report, info} = this.state;
const max = this.state.info.map((info, index) =>
<DonateReport key={index} title={info.title} opened={info.opened}
onClick={() => this.toggleInfo(index)}>
{report.filter((item) => item.month == info.key).map(({item}) => (
<h2 >{item.donaters_count}</h2>
))}
</DonateReport>
);
答案 1 :(得分:0)
我用过ternary operator
并格式化了DonateReport组件。它应该为您工作。让我知道。
<DonateReport key={index} title={info.title} opened={info.opened}
onClick={() => this.toggleInfo(index)}>
{
report.map(item => this.state.info.key === item.month ? //<--HERE
<h2 >{item.donaters_count}</h2>
: null)
}
</DonateReport>