У меня есть приложение AngularJS с диапазоном дат, где конечная дата всегда должна быть через 11 месяцев после даты начала (на общую продолжительность 12 месяцев). Пользователь должен иметь возможность войти в представление и изменить дату начала или окончания. Поэтому, если они редактируют дату начала, дата окончания корректируется до 11 месяцев после даты начала. И если они редактируют дату окончания, дата начала настраивается на 11 месяцев до даты окончания.
Проблема заключается в том, что когда любая из этих дат изменяется, они вызывают вызов AJAX на сервер, но, как он работает сейчас, они вызывают два вызова, потому что когда одна дата изменяется, то и другая.
Я пытаюсь использовать $scope.$watch('startDate')
и $scope.$watch('endDate')
, чтобы обнаружить изменения в моем контроллере, но изо всех сил пытаюсь найти способ изменить оба значения сразу, но вызвать только один вызов AJAX-сервера.
Любые идеи о том, как сохранить обе даты в строке, но избегать дублирования вызовов AJAX и $scope.$watch()
петель?
Не можете вы элемент используется для изменения даты вызвать функцию вместо того, чтобы делать часы? Или еще лучше, сохраните кнопку сохранения, которая сохранит новые диапазоны дат. –
Ваши даты, числовая метка, строка ios, объект фактической даты? Что вы призываете ajax; отдельно для начала и конца, или вы можете их выгружать и т. д.? – rgthree
@BenFelda Я использую https://github.com/g00fy-/angular-datepicker/, но не знаю, как добавить «ng-change» или аналогично этому датепиксеру, чтобы вызвать функцию. Есть идеи? В документации я ничего не видел. –