4

我想将一些新的计算属性附加到从 REST 服务返回的复杂 json 对象。这可以通过 KnockoutJS 的 Mapping 插件轻松实现。

但这次我决定选择 AngularJS。有没有类似knockout的映射插件的模块/插件??

我的问题如下图所示:

从服务器返回的 JSON 类似于:

{
id:2,
name: 'jhon',
relatives:[
            {id:1,name:'linda', score:{A:10,B:33,C:78} },
            {id:2,name:'joseph', score:{A:20,B:53,C:68} },
            {id:3, name:'keith', score:{A:40,B:83,C:30} }
          ]
}

在上面的 json 对象中,我想根据每个亲戚的分数将一些计算属性附加到“亲戚”集合中的每个对象。

4

2 回答 2

2

尝试使用

angular.extend($scope, data);

我也开始使用来自 Knockout 和 Durandal 的 Angular :) 希望这对你有用。数据应该可以直接在您的视图 ($scope) 中访问。

编辑:看到这个线程

于 2014-05-02T22:22:22.993 回答
1

基本上在角度上没有类似于 Observable 变量的东西。

AngularJS 将观察与 $scope 本身分开。要在 AngularJS 中从 Json 制作地图,您可以使用angular.fromJson绑定来自 Json 的数据。

要将字段添加到您的范围,您还可以使用angular.extend

但是无论如何添加计算字段是你需要自己做的事情,为此你可以尝试使用监视方法:$scope.watch$scope.watchGroupwatchCollection

于 2014-05-05T08:08:41.330 回答