我正在尝试制作一个反应范围滑块。 我有一个下拉列表,其中有一个范围。因此,只要下拉列表发生变化,它就会自动更改范围边栏的范围。
=========模板助手代码================
$("#ionrange_1").ionRangeSlider({
min: Session.get('min'),
max: Session.get('max'),
type: 'double',
prefix: "$",
maxPostfix: "+",
prettify: false,
hasGrid: true
});
=========================================
我也在我的模板助手中尝试了这个。
在“模板渲染”中定义范围滑块。
var slider = $("#ionrange_1").data("ionRangeSlider");
slider.reset();
$("#ionrange_1").ionRangeSlider({
min: Session.get('min'),
max: Session.get('max'),
type: 'double',
prefix: "$",
maxPostfix: "+",
prettify: false,
hasGrid: true
});
答案 0 :(得分:1)
您需要将模板rendered
函数中的代码包装到autorun
中。此外,您应该使用a reactive variable而不是会话变量
试试这个:
var self = this;
self.autorun(function() {
var slider = $("#ionrange_1").data("ionRangeSlider");
slider.reset();
$("#ionrange_1").ionRangeSlider({
min: self.min.get(),
max: self.max.get(),
type: 'double',
prefix: "$",
maxPostfix: "+",
prettify: false,
hasGrid: true
});
};
每次更新反应性var时,都应该删除此代码(并更新滑块最大/最小值)。
您还需要考虑将当前值存储到反应变量中,以便在重新加载滑块后将其设置回来。