在嵌套循环中使用React.createElement如何将li添加到父ul元素
React 嵌套循环生成子元素追加到父元素的实现方法
React 元素是不可变对象,无法在创建完成后动态追加子元素,你需要先收集所有子元素再统一传入父元素的创建参数,正确代码如下:
// 提前创建数组存储所有生成的li元素 const liList = []; properties.forEach((property) => { // 遍历每个error生成li,全部追加到liList数组 liList.push(...errors[property].error.map((e: any) => { return React.createElement('li', null, e); })); }); // 创建ul时直接传入收集好的li数组作为子元素 const ul = React.createElement('ul', null, liList);
原代码问题说明
- 你代码里
map遍历生成的li元素没有被存储,执行完直接被丢弃 - 预先创建的
ul元素不可修改,无法事后追加子元素
内容的提问来源于stack exchange,提问作者Thiago Custodio
相关产品推荐
相关产品推荐

