角度传递数据到模态和模态实例

时间:2016-07-07 12:51:23

标签: javascript angularjs json angular-ui-bootstrap

将数据传递给我的模态时遇到问题。我正在使用ng-repeat来显示json文件中的数据,如下所示

[
  {
   "id": 1,
   "userId": 0,
   "userName": "Krzyniu",
   "question":"abczxcvbnmasdfghjklqwewertyu",
   "content": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
   "voteCount": 18,
   "date": 7,

  },
  {
    "id": 2,
    "userId": 3,
    "userName": "Pablo",
    "question":"def?",
    "content": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
    "voteCount": 5,
    "date": 3,

  }
]

我想使用userId打开一个模式,该模式显示来自其他json文件的数据,该文件包含特定的用户配置文件数据,如活动级别,评论数量等。

我正在使用ui bootstrap,我的控制器看起来像那样

    .controller('modalCtrl', function ($http, $scope, $uibModal, $log) {

      $http.get('json/users.json').success(function(data){
        $scope.items = data;
      });

      $scope.open = function (size) {

        var modalInstance = $uibModal.open({
          templateUrl: 'myModalContent.html',
          controller: 'ModalInstanceCtrl',
          size: size,
          resolve: {
            items: function () {
              return $scope.items;
            },
            item: function(){
              return size;
            }
          }
        });

      };
    })

那个

.controller('ModalInstanceCtrl', function ($scope, $uibModalInstance, items, item) {
      console.log();
      $scope.item = item;
      $scope.items = items;
      $scope.selected = {
        item: $scope.items[0]
      };

      $scope.ok = function () {
        $uibModalInstance.close($scope.selected.item);
      };

      $scope.cancel = function () {
        $uibModalInstance.dismiss('cancel');
      }
    })

1 个答案:

答案 0 :(得分:0)

这适用于DataService。

你可以在Jhon Papa的角度styleguide中找到。

  

所有Angular服务都是单身人士   这就是为什么服务是在控制器之间共享数据的最佳方式。

查看有关数据服务的具体会话here