2014-09-05 50 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