2014-09-05 33 views
0

这是资源

hq.factory('AvgUsersPerWeek', function ($resource) { 
    return $resource('/HQ/Graph/GetLoggedinUsersPerWeek') 
}); 

控制器

hq.controller('AvgUsersPerWeekCtrl', function ($scope, AvgUsersPerWeek) { 

    $scope.xkey = 'Period'; 

    $scope.ykeys = ['CountUsers']; 

    $scope.labels = ['Aantal']; 

    $scope.myModel = AvgUsersPerWeek.query(); 

    /* 
    //example dataset that works, the fetched data has the same structure 
    [ 
    { "Period": "2013-04", "CountUsers": 2407 }, 
    { "Period": "2013-03", "CountUsers": 3351 }, 
    { "Period": "2013-02", "CountUsers": 2469 }, 
    { "Period": "2013-01", "CountUsers": 2246 }, 
    { "Period": "2012-12", "CountUsers": 3171 }, 
    { "Period": "2012-11", "CountUsers": 2155 }, 
    { "Period": "2012-10", "CountUsers": 1226 }, 
    { "Period": "2012-09", "CountUsers": 2245 } 
    ]; */ 


}) 

据透露。如果我用下面的数据集替换AvgUsersPerWeek.query(),它就可以工作。因此,我的资源出现了问题(提取(Fiddler)),但值不会插入到我的图表中。

我已经进行了双重检查,示例数据集具有与由数据集获取的数据集相同的结构$资源。

我没有封闭的HTML,因为它的作品。我想有什么东西在路上我使用$资源。

+0

查询的结果是什么?你可以登录'AvgUsersPerWeek.query()'吗? – 2014-09-05 08:27:38

+0

[{“Period”:“34”,“CountUsers”:19},{“Period”:“35”,“CountUsers”:9}]。我用我的测试数据替换了这些值,以检查图表是否已加载并确实存在。 – NicoJuicy 2014-09-05 08:43:36

+0

好,你有正确的数据。但$资源使用承诺,这是异步的,所以当范围初始化时,承诺可能无法解决 – 2014-09-05 08:49:10

回答

1

我猜你缺少你的资源回调,你应该做这样的事在您的控制器中:

AvgUsersPerWeek.query(function(data) { 
    $scope.myModel = data; 
    }); 

更多信息

在你的指令见this page的数据可能是不更新,你应该添加一个观察者(或观察的属性)的指令,根据从资源的变化来更新数据

$attrs.$observe('data', function(newVal){ 
    console.log(newVal); 
    // The rest of your link 
}) 

这里是你的jsfiddle

问题作者更新的更新版本:我改变了指令的使用方法:

$scope.$watch(attrs.data, function (newVal) { ... 

它的工作原理,thx!

+0

我封装它像: AvgUsersPerWeek。查询(功能(数据){scope.myModel = data; }); 它仍然不呈现图表(也没有错误)。 Fyi,我根据我的代码:http://jsbin.com/ayUgOYuY/5/edit – NicoJuicy 2014-09-05 08:50:08

+0

jsfiddle似乎不工作。但是线图的指令使用链接。链接中的数据尚未加载,所以图正在尝试加载一个空数据集。据我说,它很快加载。这里实际上是一个jsfiddle中的所有代码(包括linechart指令) – NicoJuicy 2014-09-05 09:31:50

+0

http://jsfiddle.net/f3y8qbun/ – NicoJuicy 2014-09-05 09:37:51