Я пытаюсь объявить глобальный список в своем ионном проекте с помощью переменной rootScope. Моя цель — обновить этот список конкретными сообщениями. По моему сценарию у меня разные взгляды на их формы. Я пытаюсь удерживать выполненные действия в другом представлении в приложении. Когда я нажимаю кнопку формы «x», в этот глобальный список должно быть добавлено сообщение «форма x завершена». После этого, когда я нажимаю кнопку формы «y», к этому списку должно быть добавлено сообщение «форма y завершена». Затем я отображаю содержимое глобального списка в представлении завершенных действий.
В каждом представлении у меня есть кнопка, как показано на скриншоте 2.
Кроме того, я связал эти представления с контроллером в файле controller.js ниже:
Я создал глобальный список, используя rootScope, чтобы другие контроллеры могли достигать значений этого списка.
.controller('MainCtrl', function($scope, $rootScope, $state) {
$rootScope.onButtonClick = function (obj) {
$rootScope.buttons = [];
$rootScope.buttons.push(obj);
$state.go('app.completed');
}
})
Затем я подключил представление «Выполненные действия» с другим контроллером, чтобы отобразить окончательный вид списка, чтобы увидеть все нажатые кнопки в приложении:
.controller('CompletedCtrl', function($scope,$rootScope,$state) {
$scope.buttons = $rootScope.buttons;
$scope.onCompletedButtonClick = function(){
$state.go('app.homepage');
}
})
Представление «Выполненные действия» (html-файл):
<span style="color:white">COMPLETED TravelBuddy</span>
</ion-nav-title>
<ion-content>
<div class="list">
<ion-list>
<ion-item ng-repeat="item in buttons">
{{item}}!
</ion-item>
</ion-list>
<label class="item">
<button class="button button-block button-balanced" ng-click="onCompletedButtonClick()">+</button>
</label>
</div>
</ion-content>
After I run my mobile application, I can not display all pushed items from the list, I only see the first pressed button message in the completed actions in screenshot1. How could I solve this problem?screenshot1screenshot2