【问题标题】:Using ng-repeat on Parse.com results在 Parse.com 结果上使用 ng-repeat
【发布时间】:2015-05-17 22:02:51
【问题描述】:

从 Parse.com 返回的原始结果在控制台中显示为[child, child]

我想这意味着这个对象有三个层次?因此,为了在第一个 ng-repeat 中访问,我是否需要在控制器中执行一个 foreach,然后再推送到一个数组,然后在 $scope 中使用它……似乎要获得我想要的东西还有很长的路要走。

是否可以在范围内使用 Parse.com 的原始结果。我想这样做:

var query = new Parse.Query("Programme");
query.equalTo("userId", userId);
query.find()
.then(function(result){
        $scope.programmes = result;
        console.log($scope.programmes);
});

但是,这给了我child 元素 - 我必须进行 foreach,还是有一些角度诡计?

【问题讨论】:

  • $scope.programmes = result; 有什么问题?你也可以这样使用。
  • 然后我必须使用 3 x ng-repeats 来访问数据

标签: javascript arrays angularjs object parse-platform


【解决方案1】:

您可以在视图中执行 Parse.Object 的 get 功能。

所以我把事情改成了

{{programme.get('title')}}

归功于here

【讨论】:

    【解决方案2】:

    标记的答案不再有效 正确的方法是扩展对象,然后将值映射回该类中您需要的任何项目。 然后,您可以正常绑定到 ng-repeat,而无需专门为 Parse 更改 html 代码。

    var Game = Parse.Object.extend("Game"); 
    var query = new Parse.Query(Game);
    query.find({
    success: function(results) {
      $scope.$apply(function() {
      $scope.games = results.map(function(obj) {
        return {points: obj.get("points"), gameDate: obj.get("gameDate"),  parseObject: obj};
      });
    });
    },
    
    error: function(error) {
      console.log(error);
    }
    

    【讨论】:

      猜你喜欢
      • 2015-10-09
      • 2015-12-22
      • 1970-01-01
      • 1970-01-01
      • 2017-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-07
      相关资源
      最近更新 更多