1

假设我有资源的角度服务:

var res = $resource('/myurl/:index', {index: '@index'})

有没有办法让我可以定义任意路径,以便在我的服务中调用:

$res.query()

我可以获得“[1,2,3]”的一些硬编码输出,而无需资源实际调用服务器或期望服务器具有支持查询()的功能?

4

3 回答 3

1

我认为你接近这个有点错误。 $resource是用于创建服务的工厂,您可以在其中为给定的 API 端点指定 url 和其他参数。如果您有一个假的或测试的 API 端点,只需创建一个返回硬编码数据的假服务。

这是一个例子:

.factory('TestDataResource', function() {

    return {
        query: function() {

            // Return Hard-coded data
            return [1, 2, 3];
        }
    }
});

然后你可以在你的控制器或任何地方使用它,例如:

.controller('MyController', function($scope, TestDataResource) {

    $scope.data = TestDataResource.query();
    // $scope.data should contain [1, 2, 3]
});
于 2013-10-11T05:47:17.000 回答
1

您可以将 JSON 文件用于示例数据。

于 2013-10-11T00:53:40.697 回答
0

$resource在幕后调用$http,因此您应该能够用来$httpBackend模拟响应。这个页面有丰富的关于这方面的信息。

于 2013-10-11T00:41:15.963 回答