Html 循环遍历JavaScript对象,但保留带有值的键

Html 循环遍历JavaScript对象,但保留带有值的键,html,reactjs,object-literal,Html,Reactjs,Object Literal,我想用如下视图表示上述数据: “**”将是带有卡的div类: var data = { 2016-09-24: { 0: {amount: 200, id: 2}, 1: {...} }, 2016-09-25: { 0: {amount: 500, id: 8}, 1: {...} } } 上面注释掉的console.log将返回所有amount。如何用日期(键)分段每个值?这个问题也很相似。用莱昂纳多·迪卡普里奥在《盗梦空间》中的睿智之词来说

我想用如下视图表示上述数据:

“**”将是带有
卡的div
类:

var data = {
  2016-09-24: {
    0: {amount: 200, id: 2},
    1: {...}
  },
  2016-09-25: {
    0: {amount: 500, id: 8},
    1: {...}
  }
}

上面注释掉的
console.log
将返回所有
amount
。如何用日期(键)分段每个值?这个问题也很相似。

用莱昂纳多·迪卡普里奥在《盗梦空间》中的睿智之词来说,“我们需要更深入”

你非常接近,而且在正确的轨道上。您需要再次循环嵌套对象,您将获得所需的:

Object.keys(数据).map(函数(日期,i){
//给你日期
返回(
{date}
{Object.keys(数据[日期]).map(函数(项,j){
//这是你的钥匙
var rowItem=数据[日期][项目];
返回(

金额:{rowItem.Amount}

); })} ); });

用莱昂纳多·迪卡普里奥在《盗梦空间》中睿智的话来说,“我们需要更深入”

你非常接近,而且在正确的轨道上。您需要再次循环嵌套对象,您将获得所需的:

Object.keys(数据).map(函数(日期,i){
//给你日期
返回(
{date}
{Object.keys(数据[日期]).map(函数(项,j){
//这是你的钥匙
var rowItem=数据[日期][项目];
返回(

金额:{rowItem.Amount}

); })} ); });

React正在抱怨,金额没有显示:
警告:数组或迭代器中的每个子元素都应该有一个唯一的“key”道具
@Sylar你看过我贴的小提琴了吗?它正在按预期工作。是的,我看到你的打字错误了!你有
{item.amount}
,而它本应该是
{rowItem.amount}
。go team.React正在抱怨,但金额没有显示:
警告:数组或迭代器中的每个子元素都应该有一个唯一的“key”道具
@Sylar你看过我贴的小提琴了吗?它正在按预期工作。是的,我看到你的打字错误了!你有
{item.amount}
,而它本应该是
{rowItem.amount}
。加油队。
*****************************************
* <h2>2016-09-24</h2>                   *
*                                       *
* <li>amount: 200</li>                  *
* <li>amount: 40</li>                   *
*                                       *
*****************************************

*****************************************
* <h2>2016-09-25</h2>                   *
*                                       *
* <li>amount: 500</li>                  *
* <li>amount: 90</li>                   *
*                                       *
*****************************************
dailySales(){
  Object.keys(data).forEach(function(key) {
    var dates = key;
    var val = data[key];

    let sales = val.map(function(s, i) {
      //console.log(s.amount);
    });
  });
}