更新Md-Slider上的最小值和最大值显示错误信息

3
我在CodePen上有一个非常简单的例子。我有一个带有最小值和最大值绑定的md-slider。接下来我尝试使用按钮处理程序来更改这些绑定值,并且还要更改滑块的当前位置。
//Initial setup
$scope.myslider={};
$scope.myslider.min = 100;
$scope.myslider.max =1000;
$scope.myslider.val = 500;

这是我为更新最小值、最大值和所选值的按钮编写的处理程序。
$scope.buttonhandler = function()
{
$scope.myslider.min =0;
$scope.myslider.max =100;
$scope.myslider.val = 5;
};

当按钮处理程序被触发时,滑块位置会偏离极端右侧,接近100%,而不是我期望的5%位置。
我的方法有什么问题吗?这里是codepen链接。
1个回答

1
在同一摘要周期内设置min、max和val似乎会产生一些奇怪的问题。我认为这样修复错误:
$scope.myslider.min = 0;
$scope.myslider.max = 100;
$timeout(function() {
  $scope.myslider.val = 5;
}, 0);

那么,首先设置最小值和最大值,然后在最小/最大范围内应用有效值。
这是修复过的 codepen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接