Google Chart错误:对象#<object>没有方法'F'</object>

时间:2014-02-07 14:51:31

标签: angularjs angularjs-directive google-visualization

我正在尝试在我的角应用中使用谷歌图表。当我拨打电话时,我收到谷歌可视化错误:

enter image description here

在我的控制器中,我有:

$scope.MakeQuery = function() {
    ....
    $scope.query = qs;
    $http.get('/api/query?' + $scope.query)
        .success((data) => {
            $scope.result = data;
        })
        .error((error) => {
            $scope.error = error;
        });

}

然后我有以下指令:

tsafApp.directive("googleChart",function(){
    return {
        restrict : "A",
        link: function(scope, elem, attrs) {
            var chart = new google.visualization.LineChart(elem[0]);
            var options = {
                width: 500,
                height: 500,
            };

            scope.$watch(attrs.ngModel, function(v) {
                 var dt = v.table;
                 console.log(v.table)
                 chart.draw(dt, options)
            });
        }
    }
});

在部分中我有以下内容(这是我在进行查询时出现可视化错误的地方):

<div google-chart ng-model="result" class="chart"></div>

控制台中的对象返回如下:

enter image description here

谁能看到我出错的地方?

1 个答案:

答案 0 :(得分:1)

我的数据实际上并不是一个合适的数据表。通过添加以下内容,我能够强制它:

scope.$watch(attrs.ngModel, function(v) {
    var dt = new google.visualization.DataTable(v.table);
    chart.draw(dt, options)
});

在以下参考资料中找到:Populating Data Using Server-Side Code