我的应用中有两个Meteor.Collections。一个包含一堆“滑块”对象,它们定义每个滑块的标题,最大值,最小值,基值和步长。现在,我有两个问题。首先是让滑块首先显示出来。我试过把以下代码:
Sliders.find().forEach(function(slider) {
$("#"+slider._id).slider({
min:slider.min,
max:slider.max,
value:slider.base,
step:slider.step,
change:function(event,ui) {
Data.update({_id:Data.findOne({slider:event.target.id})._id}, {$set:{value:ui.value}});
}
});
});
在Meteor.startup中,在我的client.js文件的末尾,在$(document).ready()块中,似乎没有任何东西能让它工作。但是,当我将其粘贴到javascript控制台时,它可以正常工作。无论如何,这是我的第一个问题。
我的第二个问题是每当我滑动滑块时,滑块都会消失。我可以继续拖动鼠标来改变值,但是一旦我放开了点击器,我就不能再改变它了。我已经尝试使用上面的方法并调用Meteor.method在服务器端更改它。这是因为我正在更新发布到同一客户端的集合,这使得滑块消失。任何不足之处都不会导致它消失。我该怎么处理这个?
谢谢!