AngularJS: no se puede obtener un valor de variable de ctrl scope en directiva
HostingCtrl:
function HostingListCtrl($scope, Hosting) {
Hosting.all().success(function(data) {
$scope.hostings = data;
});
}
Plantilla HTML:
<pagination items-count="{{hostings.length}}" current-page="currentPage" items-per-page="{{itemsPerPage}}"></pagination>
Directiva:
admin.directive('pagination', function() {
return {
restrict: 'E',
replace: true,
templateUrl: "<%= asset_path('angular/templates/ui/pagination.html') %>",
scope: {
currentPage: '=',
itemsCount: '@',
itemsPerPage: '@'
},
controller: function($scope, $element, $attrs) {
console.log($scope);
console.log($scope.itemsCount);
},
link: function(scope, element, attrs, controller) {
}
};
});
Estoy tratando de obtener el valor de la variable itemsCount en la directiva, pero cuando trato de console.log, el valor está vacío. Lo extraño es que cuando console.log alcance todo, está ahí:
Scope {$id: "005", $childTail: null, $childHead: null, $prevSibling: null,
$nextSibling: null…}
$asyncQueue: Array[0]
$childHead: null
$childTail: null
$destroyed: false
$isolateBindings: Object
$listeners: Object
$nextSibling: Child
$phase: null
$prevSibling: null
$watchers: Array[3]
$id: "005"
$parent: Child
$root: Scope
currentPage: 1
itemsCount: "11"
itemsPerPage: "5"
this: Scope
__proto__: Object
También cuando compruebo la fuente HTML
<nav class="pagination" items-count="11" current-page="currentPage" items-per-page="5">