Данные не попадают в общие функции в угловых 6 - PullRequest
0 голосов
/ 11 сентября 2018

Я создал общий метод для проверки доступа к меню в сервисном модуле под названием 'AuthService'. Он взаимодействует со службами в классе DataService. Общая функция доступа к меню включена во все компоненты onInit. Но данные не попадают в компоненты. 'AuthService' я получаю правильные данные.

Класс AuthService

menuAccessCheck(currentRoute) {
    var dataObj = {
        menu_url : currentRoute
    };

    this.data.checkMenuAccess(dataObj)
      .subscribe(datas => {
        // console.log(datas.data.can_add);
                datas.data

        }
      );
  }

Класс обслуживания данных

  checkMenuAccess(postData){
        this.ctrURL         =   API_URL+"menu/access/check";
        this.ajaxdata       =   postData;
        var localStore      =   JSON.parse(localStorage.getItem('currentUser'));
        headers.append("Authorization", "Bearer " + localStore.token);

        return this.http
            .post(this.ctrURL,JSON.stringify(this.ajaxdata),{ headers: headers })
            .pipe(map(data => { return data.json(); }));
    }

компонент панели приборов

ngOnInit() {
    this.auth.authCheck();
    var menuAccess = this.auth.menuAccessCheck(this.router.url);
    console.log("my value="+menuAccess);
  }

1 Ответ

0 голосов
/ 11 сентября 2018

Код ниже поможет вам получить доступ к данным.

menuAccessCheck(currentRoute) {
    var dataObj = {
        menu_url : currentRoute
    };

    return this.data.checkMenuAccess(dataObj);

  }



private menuAccess: any;

ngOnInit() {
    this.auth.authCheck();
    this.auth.menuAccessCheck(this.router.url).subscribe(datas => {
      this.menuAccess = datas;
    }); 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...