我设置了一个指令来处理使用 AngularJS 加载 jQuery Flot 图表:
var Dashboard = angular.module('StatsDashboard', []);
Dashboard.directive('chart', function() {
return {
restrict: 'E',
template: '<div></div>',
replace: true,
link: function(scope, elem, attrs) {
var chart = null;
var data = scope[attrs.ngModel];
var options = {}
$.plot(elem, data, options);
elem.show();
}
};
});
该指令从控制器加载:
function ChartCtrl($scope, $http)
{
$http.get('controllers/weekly_overview_charts.php').success(function(data) {
$scope.reg_vs_act = data;
});
}
我收到“TypeError:无法读取 parseData 处未定义的属性‘长度’”。
肯定的,这是由于 http 函数的异步性质。
我的问题是,如何确保在指令尝试加载浮点图之前返回数据?
谢谢!