在我的 Meteor App 中,我在集合元素上构建了一个编辑功能。因此,我对每个元素都有 2 个状态;普通视图和编辑表单。我使用 jQuery 有一个不错的滑块效果,可以在这两种状态之间切换。
Template.bookings.events
'click .edit-booking': (event) ->
event.preventDefault()
bookingId = event.currentTarget.dataset.booking
$('#booking-' + bookingId + '-data').slideToggle('slow')
$('#booking-' + bookingId + '-form').slideToggle('slow')
这工作正常。但是在更新的回调函数中,我尝试再次关闭表单,但我遇到了问题。
Meteor.call('updateBooking', {id: id, title: title, hours: hours},
(error, booking) ->
unless error
$.bootstrapGrowl "saved successfully", {align: 'center', type: 'success'}
$('#booking-' + id + '-data').slideToggle('fast')
$('#booking-' + id + '-form').slideToggle('fast')
booking
else
$.bootstrapGrowl error.message, {align: 'center', type: 'error'}
error
)
不知何故,我的模板的反应性刷新停止了 jquery 事件,我不知道如何实现这一点。我看到表单关闭了一瞬间,然后再次重新打开:) bootsrtapGrowl 工作正常。
任何人都可以给我一个提示。非常感谢。马库斯