在组件状态内附加JSON对象并显示它

时间:2019-05-16 12:10:36

标签: javascript json reactjs object

我有一个要传递对象状态的函数。在函数内部,我正在对该状态执行一些操作。现在,我想用执行的操作更新状态并将其显示为JSON对象。

我的状态为:

In [3]: Counter(list(zip(list1,list2)))                                                                                                                                                                 
Out[3]: 
Counter({('a', 'pos'): 4,
         ('b', 'neg'): 3,
         ('a', 'neu'): 1,
         ('b', 'pos'): 2,
         ('b', 'neu'): 1})

我有一个函数,其中填充了薪金和部门的值

state= {
    company: "xyz",
    employee: {
        name:["a","b"],
        age: [13,14]
      },
      details: {
        salary:[],
        dept:[]
      }
   }
}

传递的状态对象具有所有值;现在我想将薪金和部门的值附加到过滤器中。

预期输出为:


function updatestate(state){
//some operations..
//const output has values 
//output variable has something like this stored in it=> 
// salary:[["2500"],["4000"]] , dept:[["fin"],["mkt"]] 
}

我尝试了手动编码:

state= {
    company: "xyz",
    employee: {
        name:["a","b"],
        age: [13,14]
      },
      details: {
        salary:[["2500"],["4000"]] , 
        dept:[["fin"],["mkt"]]
      }
   }
}

但是我想显示整个状态并找到一种将值自动附加到状态中并显示为JSON的方法

1 个答案:

答案 0 :(得分:0)

我不确定您的问题,但我认为您可以使用 JSON.stringify() Fn来实现。

let state= {
    company: "xyz",
    employee: {
        name:["a","b"],
        age: [13,14]
      },
    details: {
      salary:[],
      dept:[]
    }
   };

function updatestate(state) {
  const baseData = {
   salary:[["2500"],["4000"]] , 
   dept:[["fin"],["mkt"]] 
  };
  state.details.salary = baseData.salary;
  state.details.dept = baseData.dept;
  return state;
}

state = updatestate(state);
console.log(JSON.stringify(state));