如何播种Uncaught(承诺)TypeError:orders.forEach不是函数? Vue.JS 2

时间:2017-04-04 21:22:15

标签: vue.js vuejs2 vue-component vuex

我在模块vuex商店中的突变是这样的:



.buttons-ue {
    margin: 0;
    padding: 0;
    text-align: center;
    list-style: none;
}
.bg-lh {
    cursor: pointer;
    display: inline-block;
    margin: 0 5px 10px;
    text-align: center;
    width: 90%;
    padding: 10px 0;
    position: relative;
}
.icon-danger {}
.icon-warning {}

.buttons-ue { margin: 0; padding: 0; text-align: center; list-style: none; } .bg-lh { cursor: pointer; display: inline-block; margin: 0 5px 10px; text-align: center; width: 90%; padding: 10px 0; position: relative; } .icon-danger {} .icon-warning {} 的结果是这样的:

  

对象{1:“状态1”,2:“状态2”,3:“状态3”}

执行时,存在错误:

  

未捕获(承诺)TypeError:orders.forEach不是函数

我该如何解决?

1 个答案:

答案 0 :(得分:3)

好吧,你不能用forEach迭代一个对象。 forEach是一种数组方法。如果你愿意,你可以抓住密钥并迭代它们。

const keys = Object.keys(orders);
keys.forEach(key => set(state.status, key, orders[key])  

但在这种情况下,不仅仅是

set(state, status, orders)

工作?我假设set在此上下文中可用。甚至可能只是

state.status = orders