I would like to bind a variable took from a json file inside a javascript data field, but i can't use the {{}} operator because it's processed after.
<div class="milestone">
<div class="number" data-animation="true" data-animation-type="number" data-final-number="{{itemSold}}"></div>
<div class="title">Items Sold</div>
</div>
In this way it gives to me a NaN because he can't see the value of itemSold.
This is how itemSold is retrived
var app = angular.module('app', []);
app.controller('AppCtrl', ['$scope', '$http', function($scope, $http)
{
$http.get('app/shared/homeStatistics.json').success(function(data){
$scope.itemSold = data.itemSold;
$scope.themeAndTemplate = data.themeAndTemplate;
$scope.members = data.members;
});
}]);
I think that i have to use something like ng-bing that is processed before, but i dont know how.
Thanks for all suggestions and sorry for my bad english
EDIT 1
The data are correctly retrieved but are processed after the data-final-number so he read a "" at the beginning
my json data
{
"itemSold":1000
}
EDIT 2
here it how it is processed the data-final-number
var handlePageScrollContentAnimation = function() {
$('[data-scrollview="true"]').each(function() {
var myElement = $(this);
var elementWatcher = scrollMonitor.create( myElement, 60 );
elementWatcher.enterViewport(function() {
$(myElement).find('[data-animation=true]').each(function() {
var targetAnimation = $(this).attr('data-animation-type');
var targetElement = $(this);
if (!$(targetElement).hasClass('contentAnimated')) {
if (targetAnimation == 'number') {
var finalNumber = parseInt($(targetElement).attr('data-final-number'));
$({animateNumber: 0}).animate({animateNumber: finalNumber}, {
duration: 1000,
easing:'swing',
step: function() {
var displayNumber = handleAddCommasToNumber(Math.ceil(this.animateNumber));
$(targetElement).text(displayNumber).addClass('contentAnimated');
}
});
} else {
$(this).addClass(targetAnimation + ' contentAnimated');
}
}
});
});
});
};