使用json文件的Angular $ http有效,但使用带有$ httpBackend的json文件无法显示数据

时间:2016-09-02 21:48:19

标签: javascript angularjs json angularjs-directive angularjs-scope

我可以假冒使用 $ http json 获取数据,但使用$ resource / $ httpBackend 我没有得到任何结果

$ http.get(工作)

 $http.get('api/devices.json')
      .then(function (result) {

      ...//

上面的工作正常但$ httpBackend可以使用json内联,但不能指向JSON文件

调用deviceResourceMock模块的控制器文件

deviceResource.query(function(data) {    
       vm.devices = data; 
    });

deviceResourceMock模块

app.run(function ($httpBackend) {

    var devices = 'test.json';  // Put new json file in same directory

    // ABOVE DOES NOT WORK 

这可以在下面工作

var devices = {"Devices":  [
        {
            "DeviceId": 1,
            "DeviceStatus": "Leaf Rake",
            "id": "GDN-0011",
            "ha": "Leaf rake with 48-inch wooden handle.",
            "Urt": "blah"
        }
]};

网址和WhenGet

var deviceUrl = "/api/devices";
$httpBackend.whenGET(deviceUrl).respond(devices.Devices);

关于它为什么不起作用的想法?

1 个答案:

答案 0 :(得分:0)

是" devices.Devices"功能

我认为代码应该像

$ httpBackend.whenGET(deviceUrl).respond(function(method,url,data){

return devices.Devices;

});