angular 中的 NoUiSlider - 绑定到数字数组
NoUiSlider in angular - bind to array of numbers
我正在尝试使用 NoUiSlider (Yankovsky directive)
编辑数字数组
我已经成功创建了基本功能,但我在绑定方面遇到困难。
我的数组是这样的:
vm.myNumbers = [1, 2, 6];
但此指令要求将选项设置为整个对象:
vm.options = {
start: 3,
connect: 'lower',
range: {
min: 0,
max: 10
}
};
我想为数组的每个元素创建滑块并自动更新它的值,如下图所示。
问题是 NoUiSlider 指令没有值的独立绑定。
这是显示我当前代码的 Plunker:http://plnkr.co/edit/ljm96tdcGgvwo3Hnayfk?p=preview
我可以绑定数组中的项,但保留该选项对象中的其余选项吗?
您可以参考这个plunker代码...
http://plnkr.co/edit/4VgDnm
您将相同的 options
绑定到每个滑块,因此会出现问题。
我已经更新了您的代码,这可能会对您有所帮助。
我是 nouislider-angular 作者。我为您的问题添加了示例解决方案 http://yankovsky.github.io/nouislider-angular/examples/#/multiple-sliders-binding.
我使用 $scope.$watchCollection 检查滑块的值是否有任何变化:
$scope.$watchCollection(function() {
return that.slidersOptions.map(function(options) {
return options.start;
})
}, function(newValue) {
that.numbers = newValue;
});
如果对您有用,请告诉我!
我正在尝试使用 NoUiSlider (Yankovsky directive)
编辑数字数组我已经成功创建了基本功能,但我在绑定方面遇到困难。
我的数组是这样的:
vm.myNumbers = [1, 2, 6];
但此指令要求将选项设置为整个对象:
vm.options = {
start: 3,
connect: 'lower',
range: {
min: 0,
max: 10
}
};
我想为数组的每个元素创建滑块并自动更新它的值,如下图所示。
问题是 NoUiSlider 指令没有值的独立绑定。
这是显示我当前代码的 Plunker:http://plnkr.co/edit/ljm96tdcGgvwo3Hnayfk?p=preview
我可以绑定数组中的项,但保留该选项对象中的其余选项吗?
您可以参考这个plunker代码...
http://plnkr.co/edit/4VgDnm
您将相同的 options
绑定到每个滑块,因此会出现问题。
我已经更新了您的代码,这可能会对您有所帮助。
我是 nouislider-angular 作者。我为您的问题添加了示例解决方案 http://yankovsky.github.io/nouislider-angular/examples/#/multiple-sliders-binding.
我使用 $scope.$watchCollection 检查滑块的值是否有任何变化:
$scope.$watchCollection(function() {
return that.slidersOptions.map(function(options) {
return options.start;
})
}, function(newValue) {
that.numbers = newValue;
});
如果对您有用,请告诉我!