Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.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
Javascript Vue.js动态地将JSON映射到类,而无需Vue.Set或Vuex存储中的直接赋值_Javascript_Vue.js_Vuejs2_Vuex - Fatal编程技术网

Javascript Vue.js动态地将JSON映射到类,而无需Vue.Set或Vuex存储中的直接赋值

Javascript Vue.js动态地将JSON映射到类,而无需Vue.Set或Vuex存储中的直接赋值,javascript,vue.js,vuejs2,vuex,Javascript,Vue.js,Vuejs2,Vuex,这是一个简单的问题:我是否可以将json响应映射到一个类,而不使用vue.set专门枚举字段,或者将参数传递给该类并直接赋值?在我看来这是可能的 在React中,我可以将数据映射到类 -谢谢 因此: a我可以在vue/vuex中执行映射吗?假设语法正确? b我是坚持使用vue.set还是手动分配? c如果没有,是否有比Vue更好的软件包 谢谢 返回的数据: { abc: "Some Text", def: 9999.999, ghi: false } 所需的字段集:

这是一个简单的问题:我是否可以将json响应映射到一个类,而不使用vue.set专门枚举字段,或者将参数传递给该类并直接赋值?在我看来这是可能的

在React中,我可以将数据映射到类

-谢谢

因此: a我可以在vue/vuex中执行映射吗?假设语法正确? b我是坚持使用vue.set还是手动分配? c如果没有,是否有比Vue更好的软件包

谢谢

返回的数据:

{
    abc: "Some Text", 
    def: 9999.999, 
    ghi: false
}
所需的字段集:

function anItem(payload){
  this.abc = "";
  this.def = 0;
  this.ghi = false;
  this.notices = [];
  this.selected = false;
  this.is_updating = false;
}
突变子

const mutations = {

  setStuff (state, payload) {
    /*this.state.myList.items = payload;*/ <- this works, of course.

    this.state.mylist.items = payload.map(a => new anItem(a)) <-- syntax here?
  },

};

构造对象时,可以将参数用作初始值:

function anItem(payload){
  this.abc = payload.abc;  // changed this line
  this.def = payload.def;  // changed this line
  this.ghi = payload.ghi;  // changed this line
  this.notices = [];
  this.selected = false;
  this.is_updating = false;
}
然后,更改mutator以传递此类参数:

const mutations = {

  setStuff (state, payload) {
    this.state.mylist.items = new anItem(payload);
  },

};

怎么了?我不明白您想要什么,并且没有实现。您的anItem构造函数不需要任何参数。这是故意的吗?我不明白你这是什么意思。。。vue.js在识别添加的fields@skribe:有关解释,请参见vue.set下的vue.js api。@sklingler93对不起。打字错误谢谢,就这样。非常感谢。