Я хотел бы получить директиву с изолированной областью и двухстороннюю привязку к объему контроллера, который асинхронно загружает данные.Асинхронные данные от контроллера к директиве: неизвестная ошибка провайдера
Часть HTML:
<body ng-app = 'authorGraph' ng-controller = 'GraphCtrl'>
<graph-dir/>
Javascript:
var authorGraph = angular.module('authorGraph', []);
authorGraph.directive('graphDir', function() {
return {
scope: {
graphData: '=' //two way binding
},
restrict: 'E',
link: function (scope, element) {
//do something with D3.js to visualise the data here
}
};
Сидя в Интернете, я обнаружил, что обещания может сделать трюк (этот код идет до реализации директивы)
authorGraph.config(function($routeProvider) {
$routeProvider.when('/',
{
controller: 'GraphCtrl',
resolve: {
getData: function ($http) {
return $http.get('graph_data.json').then(function (data) {
return data;
});
}
}
});
});
authorGraph.controller('GraphCtrl', function GraphCtrl($scope, getData) {
$scope.graphData = getData;
});
Однако я застрял на ошибке
Неизвестный поставщик: getDataProvider < - GetData