我无法实现有两个嵌套map
:
render() {
return (
<table className="table">
<tbody>
{Object.keys(this.state.templates).map(function(template_name) {
return (
<tr key={template_name}><td><b>Template: {template_name}</b></td></tr>
{this.state.templates[template_name].items.map(function(item) {
return (
<tr key={item.id}><td>{item.id}</td></tr>
)
})}
)
})}
</tbody>
</table>
)
}
这给出一个SyntaxError: unknown: Unexpected token
。
您如何map
在JSX中嵌套调用?
您需要将其包装在一个元素内。
像这样(tr
由于表元素的规则,我添加了一个额外的东西):
render() {
return (
<table className="table">
<tbody>
{Object.keys(templates).map(function (template_name) {
return (
<tr key={template_name}>
<tr>
<td>
<b>Template: {template_name}</b>
</td>
</tr>
{templates[template_name].items.map(function (item) {
return (
<tr key={item.id}>
<td>{item}</td>
</tr>
);
})}
</tr>
);
})}
</tbody>
</table>
);
}
}
运行示例(无表):
const templates = {
template1: {
items: [1, 2]
},
template2: {
items: [2, 3, 4]
},
};
const App = () => (
<div>
{
Object.keys(templates).map(template_name => {
return (
<div>
<div>{template_name}</div>
{
templates[template_name].items.map(item => {
return(<div>{item}</div>)
})
}
</div>
)
})
}
</div>
);
ReactDOM.render(<App />, document.getElementById('root'));
<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="root"></div>
我在下面的代码中使用了嵌套的for循环,并且我有一些条件来中断内部的for循环,这提高了代码的性能。 现在,如何使用 Java 8 流来执行相同的逻辑?我想出了下面的代码: 在这里,我不能在java流中使用< code>break语句,所以我使用了< code>return语句,但它仍然运行内部循环,因为它不会中断内部循环,所以性能没有提高。
问题内容: 我有一个方法必须执行以下操作: 我想指定嵌套的数量(在上述情况下,我希望嵌套15个)。这里有一种使用递归编程的方法吗? 问题答案: 是。这可以通过递归编程来执行。 我假设您不喜欢在源代码中写下这些嵌套的代码-如您的示例所示,因为这确实是丑陋的编程-如评论员所解释。 下面的代码(类似于Java的伪代码)对此进行了说明。我假设嵌套的深度固定。然后,您实际上想循环遍历尺寸深度的整数向量。 数
我试图在循环中使用
我用For创建了一个嵌套循环,这是程序代码和输出,然后我尝试了同时循环,得到了不同的结果 对于 虽然 请引导我。。谢谢
问题内容: 您如何在Python中说两个嵌套循环的父循环? 我知道您可以在大多数情况下避免这种情况,但是可以在Python中完成吗? 问题答案: 摆脱内循环(如果之后没有其他东西) 将外部循环的主体放入函数中并从函数返回 引发异常并在外部捕获它 设置一个标志,从内部循环中断开并在外部级别对其进行测试。 重构代码,因此您不再需要这样做。 我每次都会带着5。
问题内容: 如果我在一个循环中有一个循环,并且一旦满足一条语句,我想中断主循环,那我应该怎么做? 这是我的代码: 问题答案: 使用标记的中断: 另请参阅 Java代码中的“循环:”。 这是什么,为什么会编译? 文献资料