angularJs - обработка ошибки и установка свойства дочерней области - PullRequest
0 голосов
/ 20 октября 2018

В нашем файле app.js приложения есть несколько перехватчиков ошибок http.В них есть следующая строка:

$rootScope.$broadcast("sm:serverError", errors);

Директива serverError добавлена ​​в файл layout.html, который используется на всех наших страницах индекса (например, в основных списках).Со страницы индекса мы открываем форму редактирования, а в форме редактирования у нас есть кнопки.У этих кнопок есть

ng-disabled="disableAction"

в коде контроллера, который обрабатывает наше сохранение (и другие действия), мы устанавливаем это свойство в true перед вызовом фактического сохранения (которое является асинхронным вызовом API) и затем возвращаем его обратно вfalse в .then для этого вызова.

Проблема в том, что когда у нас возникает ошибка, которая перехватывается этими перехватчиками и вызывается метод директивы, я бы хотел как-то сбросить disableAction обратно в false.Однако области действия разные, поэтому я не могу понять, как сбросить этот флаг для наших форм.

Возможно, у вас есть идеи о том, что мы можем сделать и есть ли общее решение этой проблемы.Надеюсь, я хорошо объяснил проблему.

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