首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vue指令反应性值

Vue指令反应性值
EN

Stack Overflow用户
提问于 2022-01-13 15:09:43
回答 1查看 162关注 0票数 0

我使用自定义的v指令“v-剪辑”,它需要一个值。在我的例子中,我想使用‘数据绑定’。这意味着v剪辑的值可以从网站上的其他交互中动态变化。

在本例中,我实现了一个简单的示例,用户每次单击一个名为“计数器”的按钮时,它都会将值增加1。当用户单击打印到控制台的自定义指令时,如何检索最新的值。

我是否可以使用vnode或其他什么方法来检索值。我可以想象这个指令会有人得到更新的值。

剪辑指令

代码语言:javascript
复制
Vue.directive('clip', {
      bind: (el, binding, vnode) => {
        const clickEventHandler = (event) => {
          console.log(binding.value)
        }
        el.addEventListener('click', clickEventHandler)
      },
    })

它是这样使用的,在ui中单击按钮时,变量counter被动态更改。

代码语言:javascript
复制
<div v-clip="counter">Clip A {{ counter }}</div>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-01-13 15:58:39

来自Vue.js 2指南

如果需要跨钩子共享信息,建议通过元素的dataset进行共享。

因此,如果我正确理解你的问题,你可以尝试以下方式:

代码语言:javascript
复制
Vue.directive('clip', {

    bind: (el, binding) => {

        const clickEventHandler = () => {
            console.log(el.getAttribute('data-clipvalue'))
        }

        el.addEventListener('click', clickEventHandler)
        el.setAttribute('data-clipvalue',binding.value)
        
    },

    update: (el,binding) => {
        el.setAttribute('data-clipvalue',binding.value)
    }

})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70698820

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档