【问题标题】:VueJS - Push an object to an array of objects inside an async functionVueJS - 将对象推送到异步函数内的对象数组
【发布时间】:2022-01-10 10:52:09
【问题描述】:

我目前正在开发一个 Vue 2 项目,我必须从异步函数 scoop 外部推送一个对象。 这是下面主题中的代码:

async getData() {
  return [
  {
    id: "1",
    name: "Slim",
    age: 5,
    location: 1500,
    breed: 500,
  },
  {
    id: "2",
    name: "Sol",
    age: 3,
    location: 1500,
    breed: 1,
  },
};

有没有办法从 getData() 勺子外部访问和推送这个对象数组的数据

【问题讨论】:

    标签: javascript arrays object vuejs2


    【解决方案1】:

    我建议您在函数范围之外声明一个数组,然后对其进行更改,或者您可以将更新数组作为参数传递。

    let array = [
      {
        id: "1",
        name: "Slim",
        age: 5,
        location: 1500,
        breed: 500,
      },
      {
        id: "2",
        name: "Sol",
        age: 3,
        location: 1500,
        breed: 1,
      }];
    
    //pass array as a parameter
    async getData(array){
        return array
    }
    
    //update your array
    array.push("your object");
    
    //pass updated array in function call
    getData(array);
    

    【讨论】:

    • 我已经想到了这种方法,但是如果不从 getData() 中提取数组,是否还有其他方法可以做到?
    • 为什么需要访问数组,能描述一下你的实现吗?
    【解决方案2】:

    你也可以使用这种方法,

    async function getData(item) {
      return [
      {
        id: "1",
        name: "Slim",
        age: 5,
        location: 1500,
        breed: 500,
      },
      {
        id: "2",
        name: "Sol",
        age: 3,
        location: 1500,
        breed: 1,
      },
      item
      ]
    };
    
    getData(  {
        id: "3",
        name: "obj",
        age: 5,
        location: 1500,
        breed: 1,
      });
    

    【讨论】:

    • 谢谢先生,我一直在寻找这种确切的方法,它有效!
    猜你喜欢
    • 2014-08-12
    • 1970-01-01
    • 2017-09-26
    • 2019-04-08
    • 1970-01-01
    • 1970-01-01
    • 2021-12-04
    • 2021-07-20
    相关资源
    最近更新 更多