У меня есть директива для слайдера, который использует ionRangeSlider. При нажатии кнопки смешанные и максимальные значения изменяются, но они не обновляются в директиве. Я добавил функцию просмотра в ссылку.
Ниже приведена директива слайдера.
var app = angular.module('ionSlider',[]);
app.directive('ionslider',function($timeout){
return{
restrict:'AE',
require: 'ngModel',
scope:{
options:'='
},
template:'<div id="{{id}}" ></div>',
replace:true,
link:function($scope, $element, attrs, ngModel) {
// //function init(){
var init =function(){
$element.ionRangeSlider({
min: $scope.options.min,
max: $scope.options.max,
type: $scope.options.type,
prefix: $scope.options.prefix,
maxPostfix: $scope.options.maxPostfix,
prettify: $scope.options.prettify,
hasGrid: $scope.options.hasGrid,
gridMargin: $scope.options.gridMargin,
postfix:$scope.options.postfix,
from:$scope.options.from,
step:$scope.options.step,
hideMinMax:$scope.options.hideMinMax,
hideFromTo:$scope.options.hideFromTo,
onChange:$scope.options.onChange
});
};
init();
//OnChange
var update = function()
{
$element.ionRangeSlider ({
min: $scope.options.min,
max: $scope.options.max,
type: $scope.options.type,
prefix: $scope.options.prefix,
maxPostfix: $scope.options.maxPostfix,
prettify: $scope.options.prettify,
hasGrid: $scope.options.hasGrid,
gridMargin: $scope.options.gridMargin,
postfix:$scope.options.postfix,
from:$scope.options.from,
step:$scope.options.step,
hideMinMax:$scope.options.hideMinMax,
hideFromTo:$scope.options.hideFromTo,
onChange:$scope.options.onChange
});
};
//watch
$scope.$watch('options', function(value) {
$timeout(function(){ update(); });
});
}
}
});
Код HTML для того же, как показано ниже:
<td style="width:30%;" class="normal_row"><span><input ng-model="ldcInput.value" type="text" id={{key}} ionslider options="{'min':ldcInput.minValue,'max':ldcInput.maxValue,'step':ldcInput.step}" ng-change="mathCalculation(ldcInput)"/></span></td>
Приведенные выше значения ползунка для минимального и максимального значения изменяются в зависимости от нажатия кнопки. Но это не отражено в слайдере. Пожалуйста, дайте мне знать, где я ошибаюсь в директиве.