角度-停止可观察的时间间隔

时间:2019-10-12 09:50:35

标签: angular observable

l创建了一个具有RXJS间隔的Observable,并使用img src传递了一个数组,我在模板中使用了一个异步管道来将src值订阅到循环图像中。


  index: number;
  image$: Observable<any>;
     stoploop : boolean = false


     play() {

      this.image$.subscribe(()=>{

        let imgs: string[]=[
          '1',
          '2',
          '3',
          '4',
          '5',
          '6',
          '7',
          '8',

        ];

        this.index=imgs.length;
        this.image$ =interval(400).pipe(map(()=>{
          this.isImageLoaded = true
          return imgs[imgs.length - this.index++ % imgs.length -1]
        })),startWith(imgs[0],takeWhile(()=>this.stoploop))

      })

        }



      stop() {

           this.image$.unsubscribe()

        console.log(this.stoploop=true)
      }

问题是,当我单击“乐趣停止时间间隔”时,我没有遇到错误Property 'unsubscribe' does not exist on type 'Observable<any>'. Did you mean 'subscribe'?

1 个答案:

答案 0 :(得分:2)

您的addResourceHandler()不在takeWhile中。

pipe

https://stackblitz.com/edit/angular-2spwne?file=src/app/app.component.ts