Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 基于贴图输出的React内容渲染不工作_Reactjs_Dictionary - Fatal编程技术网

Reactjs 基于贴图输出的React内容渲染不工作

Reactjs 基于贴图输出的React内容渲染不工作,reactjs,dictionary,Reactjs,Dictionary,我有一个组件,它将依赖array.map的结果来确定它的输出。在本例中,数组包含一个名为name的元素,其中一个名称是“Welcome”。需要做的是组件为“Welcome”实例吐出一个特定的div,并为每个其他实例吐出一个不同的内容Accordion组件。我在渲染中使用了一个三元操作符,然后在返回中调用它,但是它为组件的每个实例输出相同的文本,而只为“欢迎”实例指定文本。我一辈子都搞不清楚我做错了什么。代码如下: export default class Back extends React.C

我有一个组件,它将依赖array.map的结果来确定它的输出。在本例中,数组包含一个名为name的元素,其中一个名称是“Welcome”。需要做的是组件为“Welcome”实例吐出一个特定的div,并为每个其他实例吐出一个不同的内容Accordion组件。我在渲染中使用了一个三元操作符,然后在返回中调用它,但是它为组件的每个实例输出相同的文本,而只为“欢迎”实例指定文本。我一辈子都搞不清楚我做错了什么。代码如下:

export default class Back extends React.Component {

constructor(props) {
 super(props)
}

render() {

 const CheckDomains = this.props.totaldomains.map((domain, index) => {    
    <div>
    {
      domain.name === 'Welcome' ?
        <div>This is welcome text.</div>
      :
        <div>This is accordion text.</div>
    }
    </div>
   )
 });


 return(
      <div className='back'>
        {CheckDomains}
      </div>
     );
   }
 }

您需要在map回调函数中返回一些内容

像这样:

const CheckDomains = this.props.totaldomains.map((domain, index) => {    
  return  (
      <div>
          {
            domain.name === 'Welcome' ?
              <div>This is welcome text.</div>
            :
              <div>This is accordion text.</div>
          }
        </div>
    )
});

该解决方案的可能副本是将两个div的输出放在组件的每个实例上。我可以看到您的this.props.totaldomains的JSON吗?@CHays412我已经尝试在这个沙箱环境中复制它,它正在工作-太棒了,我会检查这个!非常感谢你。