如何在 Vue.js 2 的自定义指令中进行双向绑定?

Posted

技术标签:

【中文标题】如何在 Vue.js 2 的自定义指令中进行双向绑定?【英文标题】:How to do two way binding in custom directives in Vue.js 2? 【发布时间】:2017-05-20 12:03:54 【问题描述】:

您好,我正在为 Vue.js 2 中的双向绑定寻找解决方案。我找到了关于双向绑定的答案 here,但它在 Vue.js 1 中。我尝试在 Vue.js 1 中使用它.但它没有工作。谁能帮帮我。

为什么我想要那个? A - 我有一个 contenteditable div 和一个 span 标签,其中显示了一个带有 v-html 的变量。但是我希望在进行某些编辑时调用一些函数。 @change 和 @keyup 不适用于 vuejs 1 中的 span。所以我转向自定义指令。

【问题讨论】:

【参考方案1】:

要在 vue2.0 中支持这样的事情:正如 Evan You 在论坛 here 中所建议的那样,将这些功能放在一个组件中并在多个组件上重用相同的功能,您可以将其提取到共享的 mixin 中.

我的建议是逻辑应该在组件内部处理。在 2.0 v-model 可以在组件上工作,例如https://github.com/vuejs/vue/blob/next/examples/select2/index.html

如果您想在多个组件上重用相同的逻辑,您可以将其提取到共享的 mixin 中。

【讨论】:

找不到页面。 @subha.py,对不起,我没有检查链接,使用这个:vuejs.org/v2/examples/select2.html

以上是关于如何在 Vue.js 2 的自定义指令中进行双向绑定?的主要内容,如果未能解决你的问题,请参考以下文章

什么是vue.js中的自定义指令?

Vue.js 中的自定义指令

Vue.js 2.0 | P2 双向绑定和vue-devtools

最简单的方式理解Vue的自定义指令

Vue.js教程--况颜

vue.js核心思想