javascript - Reactjs if 条件

标签 javascript reactjs

如何控制reactjs中的循环?我只是希望如果标签或 Group 相等,则不会显示

generateAvailableOptions(data){
    const availableGroups = [];
    data.map(function(food){
        availableGroups.push({
                label: food.Group,
                options: [
                    { value: 'canAdd'+food.groupsid, label: food.description}
                ],
        })
    });
    this.setState({availableGroups: availableGroups})
}

实际结果

   Vegetables:
         Carrots
   Vegetables:
         Cabbage
   Vegetables:
         Potato
   Fruits:
         Mango
   Fruits:
         Apple
   Fruits:
         Pineapple

这就是我想要的结果:

   Vegetables:
         Carrots
         Cabbage
         Potato
   Fruits:
         Mango
         Apple
         Pineapple

最佳答案

代码如下:

const data = [
            {Group:'vegetable',description:'Carrots',groupsid:1},        
            {Group:'vegetable',description:'Cabbage',groupsid:1},
            {Group:'vegetable',description:'Potato',groupsid:1},       
            {Group:'fruit',description:'Mango',groupsid:2},        
            {Group:'fruit',description:'Apple',groupsid:2}
          ]
generateAvailableOptions(data){
    const result = data.reduce((item,curr)=> {
               if(!item[curr.Group]) item[curr.Group] = [];
                item[curr.Group].push({value: 'canAdd'+curr.groupsid, label: curr.description});
                return item;
            },{});
    
    const availableGroups = [];
    Object.entries(result).forEach(entry => {
      const [key, value] = entry;
        availableGroups.push({
        "label":key,
        "options": value
      })
    });
   this.setState({availableGroups: availableGroups});
}

您可以看到结果:https://es6console.com/krhjx0rz/

关于javascript - Reactjs if 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68508232/

相关文章:

javascript - 尽管设置了 header ,但 CORS 不起作用

javascript - 如何摆脱函数中的异步?

reactjs - 如何为 img 标签设置默认图像,以防 src 在 React 中无效

javascript - 从node js服务器向客户端发送axios post请求错误消息

reactjs - 运行 tsc(TypeScript 编译器)时如何将 package.json 复制到 dist 或 build 文件夹中

Javascript - Dojo - 对象对自身的引用

javascript - 我的正则表达式有什么问题?

javascript - 动画 HTML5 元素在 Javascript 中被删除

reactjs - Flow (React Native) 使用 'this.state' 时出现错误

javascript - React-JS 如何在加载图片库之前显示预加载器图标?