使用Angular的工厂$资源的嵌套数据/子项

时间:2015-03-10 07:16:07

标签: angularjs recursion nested angularjs-resource angularjs-factory

我有一个服务器端API方法,它以JSON方式返回一个位置数组,并在Angular中创建了一个资源,以便在加载时检索整个位置数组。

所有位置还有无限的嵌套/子位置,这些位置包含在每个位置的'children'属性内的数组中。这是一个演示服务器响应的示例:

[
    {
        id: 1,
        name: 'Top Level',
        children:
        [
            {
                id: 2,
                name: 'Second Level',
                children: [ ... ]
            }
        ]
    }
]

$ save()方法在顶层节点上调用时正常工作,正如预期的那样(尽管有效负载在执行POST时还包括嵌套的子属性)。

当尝试在任何嵌套的“子节点”上调用$ save()时,这不起作用。这使我得出结论,资源方法没有以递归方式附加;但有没有一种方法可以在资源中指定递归或嵌套属性(我没有在这些行的官方角度文档中找到任何内容),因此我可以将$ save()方法附加到嵌套的子节点?

这是我现有的参考代码:

angular.module('locations', [ 'ngResource' ])
    .factory('Locations', function( $resource )
    {
        return $resource(
            './locations', {},
            { query:  { method: 'GET', isArray: true } }
        );
    });

0 个答案:

没有答案