我想执行下面的递归函数,问题是<head>
<script src="js/jquery.js"></script>
<script src="js-webshim/minified/polyfiller.js"></script>
<script>
webshim.activeLang('en');
webshims.polyfill('forms');
webshims.cfg.no$Switch = true;
</script>
</head>
因为当调用该函数时,我推了一个ul
标签并在ul
结尾处我{关闭它。如果我在结束forEach
时更改outputArray.push(<ul>)
,那么它可以正常工作,但这不符合我的目的。
周围有什么办法吗?
注意:这是一个递归函数。
</ul>
&#13;
答案 0 :(得分:2)
您要做的最好的事情是:
let arr1 = [];
let arr2 = [];
您可以根据需要循环遍历并将JSX li推入arr1:
arr1.push(<li>Some content</li>);
然后,您可以将rr1的全部内容放入ul标签包裹的arr2中:
arr2.push(<ul>{arr1}</ul>);
然后简单地渲染并返回它:
render(){
return (
<div>{arr2}</div>
)
}
当您需要生成行数和列数可变的网格时,此方法非常有效。
答案 1 :(得分:0)
考虑以下结构
let enclosure = [];
loop {
enclosure.push(jsx);
}
return (<ul>{enclosre}</ul>);