【问题标题】:Adding object to array which is missing previously - angular 2+ / ionic 2+将对象添加到以前缺少的数组中 - angular 2+ / ionic 2+
【发布时间】:2017-10-05 13:53:34
【问题描述】:

我有一个数组和一个对象。该数组是单个 api 调用。每次发送 ID 时,我都会调用该对象。在我的旧数组中,缺少一个参数 - 数据。我需要通过匹配 imageID 并查看哪个对象没有数据对象来将数据对象添加到这个数组中,假设通过过滤掉它然后从那里映射它们。问题是我无法过滤掉旧数组,只对没有数据的对象进行调用。

[
{itemID: 10, color: "blue", imageID: "1", data: "somedata"}
{itemID: 11, color: "red", imageID: "2"}
{itemID: 12, color: "green", imageID: "2", data: "somedata2"}
{itemID: 13, color: "green", imageID: "1", data: "somedata"}
]

New - 每个对象都是一个 api 调用。它会考虑旧数组的 imageID。

{imageID: "1", data: "somedata"}
{imageID: "2", data: "somedata2"}

我想要什么:

[
{itemID: 10, color: "blue", imageID: "1", data: "somedata"}
{itemID: 11, color: "red", imageID: "2", data: "somedata2"}
{itemID: 12, color: "green", imageID: "2", data: "somedata2"}
{itemID: 13, color: "green", imageID: "1", data: "somedata"}
]

组件.ts

this.oldArray.map(res => {

    this.new(res)

  })

new(res){
    this.service.new(res.imageID).subscribe(icon => {
        res.data = 'data:image/png;base64,' + icon.data;
    }
   )
  }

【问题讨论】:

    标签: angular ionic-framework ionic2 ionic3


    【解决方案1】:

    试试这样:

    ngOnInit() {
        this.oldArray.map(obj => {
            this.news(obj);
        })
    }
    
    news(obj) {
        let newObj = { imageID: "2", data: "somedata2" }
        if (!obj.data) {
            if (obj.imageID === newObj.imageID) {
                obj.data = newObj.data;
                console.log('obj', obj);
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2018-01-05
      • 1970-01-01
      • 1970-01-01
      • 2018-05-04
      • 2018-05-11
      • 1970-01-01
      • 2016-10-16
      • 2017-02-11
      • 2017-11-08
      相关资源
      最近更新 更多