Как позволить Родителю обновить данные, если я добавлю данные в дочерний контроллер

0

Мне нужно добавить некоторые данные в дочерний контроллер, после отправки добавленных данных в дочерний контроллер мне нужен родительский контроллер, перезагружающий данные. Вот пример кода:

 function parentCtr(){
       $scope.getReportsView = function() {
            ReportService
                .getReportListView(
                    $scope.Headerinfo.expenseReportID)
                .then(
                    function(reportInformation) {
                        $scope.Expensereports =    reportInformation.expensesList.expReport;
                        if ($scope.Expensereports != null && $scope.Expensereports.length > 0) {
                            $scope.noExpense = false;
                        }
                    });
        };
} 
in the child controller:
I have function like:
$scope.addData = function(data){
   addDataService.add(data).then(function())
}

Я использую bootstrap $ modal для создания всплывающих подсказок, дочерний контроллер для thsi modal:

<div ng-contrlooer='parentCtr'>
 {{Expensereports }}
    <button ng-click='openPopup'>Add Data</>
</div>

waht Я хочу, чтобы после добавления данных в дочерний контроллер я должен позволить $ scope.getReportsView() в родительском контроллере снова запустить для обновления таблицы. Добавленные данные являются частью $ scope.Expensereports, который я использую в родительском контроллере.

Теги:

1 ответ

0

Хорошо, увидев ваш код и ваш HTML, и с вашим объяснением того, как вы вызываете дочерний контроллер в модальном режиме, я думаю, что здесь происходит, когда вы логически связаны с родительским дочерним отношением, никаких таких отношений между контроллерами нет, Если это так, то "$ scope. $ Parent" должен предоставить вам доступ к родительской области.

Поскольку это не похоже на то, мое предложение было бы просто вызвать $scope.getReportsView из "родительской" области при возврате из модального.

  • 0
    Я добавляю $ scope. $ Parent.getReportsView (); в функцию addData, но она не работает, она показывает $ scope. $ parent.getReportsView () не является функцией консоли.
  • 0
    удалите $ scope. $ parent - это отдельный объект. К сожалению, не в контроллере, в представлении.
Показать ещё 8 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню