Mam listę przedmiotów, a po kliknięciu jednego z elementów wyświetlone zostanie modalne okno dialogowe aby użytkownik dokonał pewnych zmian i kliknij "Zamknij" lub "Zapisz zmiany".AngularJS: Modem związany z danymi - zapisz zmiany tylko wtedy, gdy klikniesz "Zapisz", lub zapomnij zmiany, jeśli klikniesz "Anuluj"
Problem polega na tym, że użytkownik wprowadza pewne zmiany i kliknięcia przycisku "Zamknij", zmiany zostałyby odzwierciedlone w modelu, do którego widok jest powiązany, ponieważ wiązanie danych jest natychmiastowe.
Moje pytanie brzmi: w jaki sposób odroczyć aktualizacje i wykonać wiązanie tylko po kliknięciu "Zapisz zmiany" lub jakoś zapomnieć o zmianach po kliknięciu "Anuluj".
Kod dla mojego modalnego okna dialogowego jest tak:
<div ui-modal class="fade static" ng-model="modalShown" id="myModal" data-backdrop="static">
<div class="modal-header">
<button type="button" class="close" ng-click="closeModal()" aria-hidden="true">×</button>
<h3>{{selectedClientFeature.feature.type}}</h3>
</div>
<div class="modal-body">
<ul class="unstyled columnlist">
<li ng-repeat="country in countriesForEdit">
<input type="checkbox" ng-model="country.selected"> {{country.name}}
</li>
</ul>
</div>
<div class="modal-footer">
<a ng-click="closeModal()" class="btn">Close</a>
<a ng-click="saveChanges()" class="btn btn-primary">Save changes</a>
</div>
</div>
Dzięki Shaun