Vue自定义指令整合Jquery Select2 options 变化自动渲染问题

1.现在的代码,vue渲染时要求option数据必须已经初始化完成,这种情况当联动时,option没办法实时获取,感谢各位大神指点迷津。


//Jquery select2封装
Vue.directive('select2', {
    inserted: function (el, binding) {
        var options = binding.value || {};
        $(el).select2(options).on("select2:select", function (e) {
            el.dispatchEvent(new Event('change', { target: e.target }));
        });
    },
    update: function(el, binding) {
        $(el).trigger("change");
    }
});
<select v-model="declaration.applyDepartmentCodeC" @change="getDepartmentUsers($event.currentTarget.value, 1)" v-select2="{data: declaration.applyDepartmentOptions}"></select>

主要问题有两个:

1.option变化,如何在指令里获取变化并完成初始化。
2.讲初始化写在update钩子中, 会因为虚拟dom频繁访问@change事件
3.感谢大神。

阅读 2.5k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏