Таймер не подписывается - PullRequest
0 голосов
/ 31 марта 2020

Привет всем, у меня есть фрагмент кода в моем проекте, который, кажется, не срабатывает. У меня есть класс представления, из которого я инициирую выборку местоположения каждые 10 секунд. Перед загрузкой я делаю проверки прав и все.

 view .js
`    

     this.props.getLocationPeriodically(({ latitude, longitude }) => {
          //  console.log("latlong :: "  + attitude + longitude);


        });

в locationService. js

import { Subject, NEVER, timer } from "rxjs";
import {switchMap, materialize, dematerialize, map,filter } from "rxjs/operators";
const pauser = new Subject();
const source = timer(1000, 10000);

  getLocationPeriodically = callback => {

if (timerInstance == undefined) {
    console.log("TILL THIS ONLY LOGGED");
    timerInstance = pauser
      .pipe(
        switchMap(paused => (paused ? NEVER : source.pipe(materialize()))),
        dematerialize()
      )
      .subscribe(val => {
        console.log("NOT LOGGED");
        Geolocation.getCurrentPosition(
          position => {
            callback && callback(position.coords);
          },
          error => {
            console.log("getPeriodic Error" + error);
            const locationEnabled = false;
            store.dispatch({
              type: settingsActionTypes.IS_LOCATION_SERVICE_TURNED_ON,
              locationEnabled
            });
            !locationStatus.isPhoneLocationServiceOnRequestCancelled &&
              this.enableAndPingLocation(callback);

            this.clearLocationFetch();
          },
          { enableHighAccuracy: true, timeout: 20000, maximumAge: 1000 }
        );
      });
    pauser.next(false);
  }
}

где as

Но я не получаю ответ от этих методов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...