От другого контроллера открывается модальное всплывающее окно. При закрытии модального всплытия я сделаю что-то, и я хочу передать данные другому контроллеру, который заполняет сетку пользовательского интерфейса и привязан к $scope.searchResultsGridOptions
.UI Обновление сетки в угловом
Так что в моем ABCCtrl.js
файле:
На закрытии модального, я делаю:
$("#iConfirmationModal").on('hidden.bs.modal', function() {
$state.go('transaction.search.results', {});
//I close all the modals
$uibModalStack.dismissAll();
//I get the stored search criteria
var searchResultsParam = TransactionDataServices.getSavedSearchParams();
//Using them I hit the web service again and get the data to reload the UI Grid
TransactionServices.getTransactionAdvSearchResults(searchResultsParam).then(function (result) {
//I got the result
console.log(result);
/Now I want to reload the grid with this data , but the grid scope object which binds to this , is in separate controller
searchResultsGridOptions.data = result;
});
});
В DEFCtrl.js
У меня есть
getSearchResultsGridLayout: function (gridOptions, uiGridConstants, datas) {
gridOptions.multiSelect = false;
// gridOptions.data.length = 0;
// gridOptions.data = '';
gridOptions.data = datas;
console.log("Grid Data ");
console.log(datas);
console.log(gridOptions.data);
angular.element(document.getElementsByClassName('grid')[0]).css('height', '0px');
// console.log(datas.length);
return gridOptions;
}
Но как бы Я только изменяю данные только тогда, когда модальный закрывается?
Остальное время он не должен обновлять сетку?
Или
Есть ли способ, когда на закрытии модального, вместо того, чтобы просто вернуться в состояние с помощью $state.for()
и видящего предыдущих неотдохнувших данных, я могу увидеть обновленные данные?