小编Yoa*_*oan的帖子

使用angularjs in ionic创建和更新全局列表

我尝试使用rootScope变量在我的离子项目中声明一个全局列表.我的目标是使用特定消息更新此列表.根据我的情景,我对他们的表格有不同的看法.我尝试在应用程序的另一个视图中保存已完成的操作.当我按下"x"形式的按钮时,"x form is completed"消息应被推入该全局列表.之后,当我按下"y"形式的按钮时,"y form is completed"消息应该附加到该列表中.然后,我在完成的操作视图中显示全局列表的内容.

在每个视图中,我都有一个按钮,如screenshot2所示.

另外,我将这些视图与controller.js文件中的控制器连接:

我使用rootScope为其他控制器创建了一个全局列表,以达到该列表值

 .controller('MainCtrl', function($scope, $rootScope, $state) {

      $rootScope.onButtonClick = function (obj) {
        $rootScope.buttons = [];
        $rootScope.buttons.push(obj); 
        $state.go('app.completed');
    }
 })
Run Code Online (Sandbox Code Playgroud)

然后我将Completed Actions视图与另一个控制器连接,以显示列表的最终视图,以查看应用程序中所有按下的按钮:

 .controller('CompletedCtrl', function($scope,$rootScope,$state) {

    $scope.buttons = $rootScope.buttons;

    $scope.onCompletedButtonClick = function(){
    $state.go('app.homepage');  

  }

})
Run Code Online (Sandbox Code Playgroud)

已完成的操作视图(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>
Run Code Online (Sandbox Code Playgroud)

运行我的移动应用程序后,我无法显示列表中的所有推送项目,我只在screenshot1中的已完成操作中看到第一个按下的按钮消息.我怎么能解决这个问题?screenshot1 screenshot2

javascript angularjs angularjs-directive ionic-framework ionic-view

5
推荐指数
1
解决办法
128
查看次数