передача переменной с фабрики на контроллер для просмотра - PullRequest
0 голосов
/ 13 июня 2019

Я не могу получить необходимое значение в контроллере с завода.

Это мой завод:

({
  countDoc: function(personId) {
    var deRelatedToPerson, deRelatedToPersonJSON;
    deRelatedToPerson = [
      {
        people: [personId],
        isActiveFilter: personId === 0 ? false : true,
        type: 'peopleAdvancedSearch',
        searchSection: 'peopleSearch'
      }
    ];
    deRelatedToPersonJSON = $filter("json")(deRelatedToPerson);

    return $http.post(advancedSearchDeBasePath + 'partialRecordCount/', deRelatedToPerson)
      .then(function(resp) {
        resp.data;
        return console.log(resp.data.data);
    });
  }
});

Это мой контроллер:

bioPeopleFactory.countDoc(personId).then(function(resp) {
  $scope.totalDocNum = resp.data;
  return console.log(resp.data);
});

Я получаю эту консольную ошибку:

TypeError: Невозможно прочитать свойство 'data' из неопределенного

, кажется, что resp.data не определена в контроллере.

Но контроллер работает и вызывает fuction на фабрике, так как строка возвращает console.log (resp.data.data);на заводе дает мне правильное значение, которое мне нужно в che console.log.

Тем не менее я получаю: console.log !

1 Ответ

0 голосов
/ 13 июня 2019

Возвращает ответ обработчику успеха:

return $http.post(advancedSearchDeBasePath + 'partialRecordCount/', deRelatedToPerson)
  .then(function(resp) {
    resp.data;
    ̶r̶e̶t̶u̶r̶n̶ ̶c̶o̶n̶s̶o̶l̶e̶.̶l̶o̶g̶(̶r̶e̶s̶p̶.̶d̶a̶t̶a̶.̶d̶a̶t̶a̶)̶;̶
    console.log(resp.data.data);
    return resp.data;
});

Этот метод .then возвращает новое обещание, которое разрешается или отклоняется через возвращаемое значение successCallback или errorCallback.

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