0

我正在尝试显示数组中的数据,但我不知道该怎么做。

这是我的 service.js 文件的片段:

this.getdata = function() {
    var myData = $resource('url', {method: 'get', isArray: true});

    myData.prototype.destroy= function(callback) {
        return reffs.remove({id: this.id},callback);
    };

    return myData;
};

从控制器:

$scope.data = myservice.getdata().query;
alert($scope.data.length) // getting 4
alert($scope.data[1].id)  // getting undefined
alert($scope.data[1])     // getting undefined

我也试过:

alert(JSON.parse($scope.data[1]).id)
alert(JSON.stringify($scope.data[1]).id)
alert(JSON.stringify($scope.data))

我得到了 4alert(data.length)但没有其他工作:( 如何将它们写在一个alert或 html 中?

4

1 回答 1

0

尝试像这样创建您的资源:

var myData = $resource(
    'url/:id',                // url
    {id:'@id'},               // paramDefaults (optional)
    {'update':{method:'PUT'}} // actions (optional)
);

注意第二个和第三个参数。这些是paramDefaultsactions。在您的代码片段中,您尝试覆盖默认get行为,但没有完全正确地构造参数。无论如何,这不是必需的,正如query您需要的那样。您可能要添加的唯一操作是update操作,因为ngResource默认操作不附带PUTngResource 您可以在此处阅读更多信息。

然后您应该能够按如下方式使用您的资源:

$scope.data = myservice.getdata().query();

如果您仍然无法调试,我会安装Batarang

于 2013-08-27T14:30:11.010 回答