Javascript vue js jquery切换器
我正在尝试绑定一组复选框,同时使用一个名为switcher的jQuery插件(它也由Pixel Admin主题包装)。 我的问题是它没有初始化插件Javascript vue js jquery切换器,javascript,jquery,vue.js,Javascript,Jquery,Vue.js,我正在尝试绑定一组复选框,同时使用一个名为switcher的jQuery插件(它也由Pixel Admin主题包装)。 我的问题是它没有初始化插件 HTML {{partnerType.name} checkbox.js Vue.directive('checkbox', function(value) { $(this.el).switcher({ theme: 'modern', on_state_content: '', off_
HTML
{{partnerType.name}
checkbox.js
Vue.directive('checkbox', function(value) {
$(this.el).switcher({
theme: 'modern',
on_state_content: '',
off_state_content: ''
});
if(value)
$(this.el).addClass('checked');
else
$(this.el).removeClass('checked');
});
在
show.js
文件中,我基本上有一个checkedPartnerTypes:[]
数组,我在每次请求后都会更新它。您的指令从未真正更新过,因为您没有将值传递给v-checkbox
。当您只需要update
方法时,您使用的速记
您可能只想在bind
中执行类似的操作,因为插件会检测元素是否被选中
Vue.directive('checkbox', {
bind: function () {
$(this.el).switcher();
}
});
这样,它只应用一次。我必须通过jQuery手动更新它的状态(同时将选中的类添加到父元素)。不过,区别在于,我没有告诉指令是否选中了复选框,因此我最终只是使用
v-checkbox=“typeIsChecked(partnerType.id)”
将其状态作为布尔值传递,现在它工作得很好!谢谢