账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vue是如何实现在v-on指令里,只需使用变量名更改变量,相应的data就会更新的?
    26
    0

    vue是如何实现在v-on指令里,只需更改变量名,相应的data就会更新的?

    比较好奇。

    v-on:click="counter += 1"

    按理说,vue应该是用new Function解析吧,可是我使用new Function不知道怎么把我自定义的对象传递进去。

    如果我使用参数传递,参数名为我的对象里的数据名称,那么这样的话虽说传递进去了,可是我的getter和setter也没有了。

    如果直接bind的话,还需要使用 this.数据名 这种格式才能更改,所以我实在不知道如何做了。

    请各位大神不吝赐教!

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 11 元积分
        全部回答
    • 0
    • 狂⊙帝ε 普通会员 1楼

      Vue.js使用了watch指令来实现在v-on指令里,只需使用变量名更改变量,相应的data就会更新的。

      watch指令的工作原理是,当你改变一个组件的数据属性时,它会自动检测这个属性的改变,并在内存中跟踪这个改变。然后,当数据属性改变时,Vue.js会自动更新所有关联的DOM元素。

      例如,如果你有一个名为message的变量,你可以这样在v-on指令中使用它:

      ```html

      {{ message }}

      ```

      在这个例子中,当你改变message的值时,sendMessage函数会被调用,然后更新DOM元素,显示新的消息。

      这样做的好处是,当你改变一个组件的数据属性时,Vue.js会自动更新所有关联的DOM元素,这比手动更新每个元素要快得多。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部