本文介绍了React嵌套的地图/ forEach不工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用CMS系统,嵌套子菜单根据用户/定制等不同



试图解决这个问题我正在放置一个地图功能内部的反应组件。根据文档,这种方法只能使用一个嵌套的映射映射,但显然不是第二个,这就是我需要渲染子菜单,任何想法?

  render(){
return(
< div className =ui dropdown item>
{this.state.text}
< i className =下拉图标>< / i>
< div className =menu>
{ map(function(sub,i,i)){
option.split('@')。 itemkey = {i +random}> {subOption}< / a> ;;
})
})}
< / div>
< ; / div>

}


解决方案

您需要在第一个 .map



之前添加 return map(function(option,i){
return option.split('@')。map(function(subOption ,i){
return< a className =itemkey = {i +random}> {subOption} < / a> ;;
})
})}


I am working on a CMS system with nested sub menus that are different depending on user / customization ,etc.

Trying to solve this problem I am placing a map function inside of a react component. As per documentation this approach works with only one nested map fucntion, but apparently not a second one, which is what I need to render sub menus, any ideas?

render() {
    return (
        <div className="ui dropdown item">
            {this.state.text}
            <i className="dropdown icon"></i>
            <div className="menu">
                {multipleOptions.split(',').map(function(option, i){
                    option.split('@').map(function(subOption, i){
                        return <a className="item" key={i + "random"}>{subOption}</a>;
                    })
                })}
            </div>
        </div>
    )
}
解决方案

You need to add return inside first .map

{multipleOptions.split(',').map(function(option, i) {
   return option.split('@').map(function(subOption, i) {
     return <a className="item" key={i + "random"}>{ subOption }</a>;
   })
})}

这篇关于React嵌套的地图/ forEach不工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-26 08:33