热门回答:
react中数据是单向绑定的。而vue中数据是双向绑定的。为什么? 在react中。主要是通过setState 去改变state的值;而在vue中。会自动的触发set 与get 改变属性的值。
在vue中有两个比较重要的知识点。computed 与 watch;
一、computed
computed 适用计算一些属性。内存消耗较小依赖值不变。这个也不会变。
一般情况下。我们声明的计算属性。调取的是getter 函数。依赖于所绑定的msg 这个值。并随之发生变化。
在计算属性中设置set。 调用setter 函数。。
此时this.changesmsg会发生改变。然后触发setter函数。设置this.msg, 最终this.changesmsg 的值是uwuw。
如果一个变量依赖于两个变量的。比如是两个变量的和。适用于这种方法。
computed必须在实例范围内
vue中setter与getter 是想数据的双向绑定。
二、watch
vue 通过watch选项提供了一个更通用的方法。来响应数据的变化。一般数据变化是执行异步或开销较大的时候。比较适合。
三、methods
在vue中。还有methods这个方法。里面一边装着vue中需要调用的一些方法。这也可以改变数据。不过相比computed 开销较大。每次改变都需要调用。
PS : 最后说一点。在vue中。var vm = new Vue({}) ,其中vm是局部变量 。需要在控制台打印的话 需要
其他观点:
个人观点
要尽可能多使用计算属于。而少用侦听器。
计算属性能优化模板代码。
下面是引用官方说法:
计算属性 vs 侦听属性
Vue 提供了一种更通用的方式来观察和响应 Vue 实例上的数据变动:侦听属性。当你有一些数据需要随着其它数据变动而变动时。你很容易滥用 watch——特别是如果你之前使用过 AngularJS。然而。通常更好的做法是使用计算属性而不是命令式的 watch 回调
侦听器
虽然计算属性在大多数情况下更合适。但有时也需要一个自定义的侦听器。这就是为什么 Vue 通过 watch 选项提供了一个更通用的方法。来响应数据的变化。当需要在数据变化时执行异步或开销较大的操作时。这个方式是最有用的。
您还感兴趣的文章推荐以上就是由互联网推广工程师 网创网 整理编辑的,如果觉得有帮助欢迎收藏转发~
本文地址:https://www.wangchuang8.com/175557.html,转载请说明来源于:网创推广网
声明:本站部分文章来自网络,如无特殊说明或标注,均为本站原创发布。如若本站内容侵犯了原著者的合法权益,可联系进行处理。分享目的仅供大家学习与参考,不代表本站立场。
评论(2)
属性,数据,侦听器,绑定,变量,开销,方法,变动,函数,较大
没想到大家都对Vue中,使用过多的侦听器和计算属性有什么不好的影响?感兴趣,不过这这篇解答确实也是太好了
react中数据是单向绑定的。而vue中数据是双向绑定的。为什么? 在react中。主要是通过setState 去改变s