我想要ng只返回一个随机记录(使用InfiniteScroll),它可能吗?

时间:2017-07-10 02:28:13

标签: angular ionic-framework ionic2

我不知道这是否是最佳方法,但让我解释一下我在做什么。

我有一个带离子和角度的移动应用程序。在它上面我有一个ngFor,它在一个可观察的数据中显示并正常显示。我提出一个条件,即基于ngFor索引,每5条记录在另一个带有广告的可观察对象中执行新的ngFor。

我希望此广告使用PIPE只返回一个随机记录,但是当我使用InfiniteScroll加载更多数据时,它会重新混合所有以前加载的广告。

是否可能或是更好的方法?

Heres de template snippet

<div *ngFor="let item of produtos | async; let i = index">        
  <ion-card >
    <ion-item>
    {{ item.name }}
    </ion-item>
  </ion-card>

  <div *ngIf="( (i % 4 == 0) && ( x > 0 ) )" >    
    <ion-card >
      <ion-item *ngFor="let ads of allads |  onerandom" >
        <p>{{ ads?.adsCompany }}</p>
      </ion-item>
    </ion-card>
  </div>
</div>

继承人PIPE

import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
    name: 'onerandom'
})
export class oneRandomObject implements PipeTransform {
    transform(values): any {       

            var myrand = Math.floor(Math.random() * values.length);
            var temparray = []
            temparray[myrand] = values[myrand];
            return temparray;
    }
}

我不知道如何修复它而不重新混合我已加载的广告。

0 个答案:

没有答案