四、使用computed和methods进行计算的区别
在Vue实例下computed与methods的区别在于:
1、computed:基于依赖缓存,多次调用computed中的计算方法时,当第一次计算出结果后,这个结果会缓存下来。只要computed属性所属定义的实例不发生改变,则第二次不再进行计算而是直接调用第一次计算结果进行页面渲染。
2、methods:多次调用时,每次的结果都是重新调用methods中的计算方法进行计算的。
原则上可以使用 methods 来替代 computed,效果上两个都是一样的,但是 computed 是基于它的依赖缓存,只有相关依赖发生改变时才会重新取值;但是使用 methods ,在重新渲染的时候,函数总会重新调用执行。
注意:可以这样说,使用 computed 性能会更好,但是如果不希望缓存,就可以使用 methods 属性来进行计算操作。
五、使用实例
根据实际开发过程中的不同需求,把实战中比较常见的处理方式汇总出来,需求是做不完的,也不可能全部覆盖到,这里只分享一些比较常见的操作,方便有需要的开发者查阅使用,具体的实例如下所示。
**1.**通过使用计算属性处理字符串的反转字符串操作
字符串初始值: {{ title }}
计算后反转字符串的值: {{ reversedTitle }}
最后结果:
字符串初始值: Apple
计算后反转字符串的值: elppA
**2.**通过使用计算属性来处理是否点击操作
computed:{
noChecked:function(){
return this.array.filter(function(e){
return !e.isChecked
}).length
}
}, // e.isChecked是input{type=“checkbox”}的value值,当在页面上点击勾选或者取消勾选,则e.isChecked的值会改变,即在外部改变了属性,同样也会发出计算属性的方法。
**3.**通过使用计算属性写判断筛选条件
computed: {
isComplete() { //判断是否符合下述条件
return (
(this.tabActive == “1” && this.currentNode == “确认资源”) || (this.tabActive == “1” && this.currentNode == “结束”)
);
},
}
**4.**计算属性里面的方法带参数的使用
《设计思想解读开源框架》
第一章、 热修复设计
-
第一节、 AOT/JIT & dexopt 与 dex2oat
-
第二节、 热修复设计之 CLASS_ISPREVERIFIED 问题
-
第三节、热修复设计之热修复原理
-
第四节、Tinker 的集成与使用(自动补丁包生成)
第二章、 插件化框架设计
-
第一节、 Class 文件与 Dex 文件的结构解读
-
第二节、 Android 资源加载机制详解
-
第三节、 四大组件调用原理
-
第四节、 so 文件加载机制
-
第五节、 Android 系统服务实现原理
第三章、 组件化框架设计
-
第一节、阿里巴巴开源路由框——ARouter 原理分析
-
第二节、APT 编译时期自动生成代码&动态类加载
-
第三节、 Java SPI 机制
-
第四节、 AOP&IOC
-
第五节、 手写组件化架构
第四章、图片加载框架
-
第一节、图片加载框架选型
-
第二节、Glide 原理分析
-
第三节、手写图片加载框架实战
第五章、网络访问框架设计
-
第一节、网络通信必备基础
-
第二节、OkHttp 源码解读
-
第三节、Retrofit 源码解析
第六章、 RXJava 响应式编程框架设计
-
第一节、链式调用
-
第二节、 扩展的观察者模式
-
第三节、事件变换设计
-
第四节、Scheduler 线程控制
第七章、 IOC 架构设计
-
第一节、 依赖注入与控制反转
-
第二节、ButterKnife 原理上篇、中篇、下篇
-
第三节、Dagger 架构设计核心解密
第八章、 Android 架构组件 Jetpack
-
第一节、 LiveData 原理
-
第二节、 Navigation 如何解决 tabLayout 问题
-
第三节、 ViewModel 如何感知 View 生命周期及内核原理
-
第四节、 Room 架构方式方法
-
第五节、 dataBinding 为什么能够支持 MVVM
-
第六节、 WorkManager 内核揭秘
-
第七节、 Lifecycles 生命周期
本文包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…
问题**
-
第三节、 ViewModel 如何感知 View 生命周期及内核原理
-
第四节、 Room 架构方式方法
-
第五节、 dataBinding 为什么能够支持 MVVM
-
第六节、 WorkManager 内核揭秘
-
第七节、 Lifecycles 生命周期
[外链图片转存中…(img-uph7wlFb-1643542781192)]
本文包含不同方向的自学编程路线、面试题集合/面经、及系列技术文章等,资源持续更新中…
[外链图片转存中…(img-XgSny113-1643542781193)]