當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript ReplaySubject.complete方法代碼示例

本文整理匯總了TypeScript中rxjs.ReplaySubject.complete方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript ReplaySubject.complete方法的具體用法?TypeScript ReplaySubject.complete怎麽用?TypeScript ReplaySubject.complete使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在rxjs.ReplaySubject的用法示例。


在下文中一共展示了ReplaySubject.complete方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1:

            (error: object, data: NpmRepositoryPackageJson) => {
            if (error) {
              subject.error(error);
            }

            subject.next(data);
            subject.complete();
          });
開發者ID:baconwaffles,項目名稱:angular-cli,代碼行數:8,代碼來源:npm.ts

示例2: handleMessage

 handleMessage(msg: proto.Message) {
   if (msg.type) {
     switch (msg.type) {
       case 'offer':
         log.webrtc('REMOTE OFFER', { offer: msg.offer })
         this.pc
           .setRemoteDescription({ type: 'offer', sdp: msg.offer })
           .then(() =>
             this.candidates.subscribe((ic) =>
               this.pc
                 .addIceCandidate(ic)
                 .catch((err) => log.webrtc('Failed to addIceCandidate', err))
             )
           )
           .then(() => this.pc.createAnswer())
           .then((answer) => this.pc.setLocalDescription(answer))
           .then(() => {
             const { sdp } = this.pc.localDescription as RTCSessionDescription
             log.webrtc('Send LOCAL ANSWER', { answer: sdp })
             this.send({ answer: sdp })
             this.sdpIsSent()
           })
           .catch((err) => this._onError(err))
         break
       case 'answer':
         log.webrtc('REMOTE ANSWER is received', { answer: msg.answer })
         this.pc
           .setRemoteDescription({ type: 'answer', sdp: msg.answer } as any)
           .then(() => {
             this.candidates.subscribe((ic) =>
               this.pc
                 .addIceCandidate(ic)
                 .catch((err) => log.webrtc(`${this.id}: Failed to add REMOTE Ice Candidate`, err))
             )
           })
           .catch((err) => this._onError(err))
         break
       case 'candidate':
         log.webrtc('REMOTE ICE CANDIDATE is received', msg.candidate)
         this.candidates.next(new env.RTCIceCandidate(msg.candidate as proto.IceCandidate))
         break
       default:
         this._onError(new Error('Buffer Protocol unknown message from the remote peer'))
     }
   } else {
     log.webrtc('REMOTE FINAL MESSAGE received')
     this.finalMessageReceived = true
     this.candidates.complete()
     if (this.finalMessageSent) {
       this.remotes.delete(this.id)
     }
   }
 }
開發者ID:openpaas-ng,項目名稱:netflux,代碼行數:53,代碼來源:Remote.ts

示例3: Date

 .subscribe(articles => {
     if (articleSubject.observers.length > 0) {
         articleSubject.next(articles);
         feed.lastUpdatedAt = new Date();
         setTimeout(
             () => this.fetchArticles(feed, articleSubject),
             600000,
         );
     } else {
         articleSubject.complete();
     }
 });
開發者ID:danhooper,項目名稱:home_page,代碼行數:12,代碼來源:rss.service.ts

示例4: clean

 clean(sendFinalMessage = true) {
   log.webrtc('CLEAN REMOTE')
   this.pc.oniceconnectionstatechange = () => {}
   this.pc.onicecandidate = () => {}
   ;(this.pc as any).ondatachannel = () => {}
   this._onError = () => {}
   this.candidates.complete()
   this.remotes.delete(this.id)
   clearTimeout(this.timer)
   this.pc.close()
   if (sendFinalMessage) {
     this.sendFinalMessage()
   }
 }
開發者ID:openpaas-ng,項目名稱:netflux,代碼行數:14,代碼來源:Remote.ts

示例5: getNpmConfigOption

function getNpmConfigOption(
  option: string,
  scope?: string,
  tryWithoutScope?: boolean,
): Observable<string | undefined> {
  if (scope && tryWithoutScope) {
    return concat(
      getNpmConfigOption(option, scope),
      getNpmConfigOption(option),
    ).pipe(
      filter(result => !!result),
      defaultIfEmpty(),
      first(),
    );
  }

  const fullOption = `${scope ? scope + ':' : ''}${option}`;

  let value = npmConfigOptionCache.get(fullOption);
  if (value) {
    return value;
  }

  const subject = new ReplaySubject<string | undefined>(1);

  try {
    exec(`npm get ${fullOption}`, (error, data) => {
      if (error) {
        subject.next();
      } else {
        data = data.trim();
        if (!data || data === 'undefined' || data === 'null') {
          subject.next();
        } else {
          subject.next(data);
        }
      }

      subject.complete();
    });
  } catch {
    subject.next();
    subject.complete();
  }

  value = subject.asObservable();
  npmConfigOptionCache.set(fullOption, value);

  return value;
}
開發者ID:fmalcher,項目名稱:angular-cli,代碼行數:50,代碼來源:npm.ts

示例6: getNpmConfigOption

function getNpmConfigOption(
  option: string,
  scope?: string,
  tryWithoutScope?: boolean,
): Observable<string | undefined> {
  if (scope && tryWithoutScope) {
    return concat(
      getNpmConfigOption(option, scope),
      getNpmConfigOption(option),
    ).pipe(
      filter(result => !!result),
      defaultIfEmpty(),
      first(),
    );
  }

  const fullOption = `${scope ? scope + ':' : ''}${option}`;

  let value = npmConfigOptionCache.get(fullOption);
  if (value) {
    return value;
  }

  const subject = new ReplaySubject<string | undefined>(1);

  const optionValue = npmConfig && npmConfig[fullOption];
  if (optionValue == undefined || optionValue == null) {
    subject.next();
  } else {
    subject.next(optionValue);
  }

  subject.complete();

  value = subject.asObservable();
  npmConfigOptionCache.set(fullOption, value);

  return value;
}
開發者ID:rexebin,項目名稱:angular-cli,代碼行數:39,代碼來源:npm.ts

示例7:

 Promise.all(promises).then(() => subject.complete());
開發者ID:sonukapoor,項目名稱:angular-ssr,代碼行數:1,代碼來源:application.ts


注:本文中的rxjs.ReplaySubject.complete方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。