<!--计算属性:1. 定义:要用的属性不存在,要通过已有的属性计算得来2. 原理:底层借助了 Object.defineProperty 方法提供的 getter 和 setter3. get 函数什么时候执行?(1). 初次读取时会执行一次(2). 当依赖的数据发生改变时会被再次调用4. 优势:与 methods 实现相比,内部有缓存机制(复用),效率高,调试方便5. 备注:1. 计算属性最终会出现在 vm 上,直接读取使用即可2. 如果计算属性要被修改,那必须写在 set 函数去响应修改,且 set 中要引起计算时依赖的数据发生改变
-->
<div id="root"><ul><li>姓:<input type="text" v-model="firstName"></li><li>名:<input type="text" v-model="lastName"></li><li>全名:{{getFullName}}</li><li>全名:{{getFullName}}</li><li>全名:{{getFullName}}</li><li>全名:{{getFullName}}</li><li>全名:{{getFullName}}</li><li>全名:{{getFullName}}</li><li>全名:{{getFullName}}</li></ul>
</div>
<script src="../js/vue.js"></script>
<script>Vue.config.productionTip = false;const vm = new Vue({el: '#root',data: {firstName: '张',lastName: '三'},computed: {getFullName: {get() {console.log(1);console.log('已通过 get 方式获取到了 getFullName 这个计算属性的值');return this.firstName + ' - ' + this.lastName;},set(value) {console.log('已通过 set 方式修改了 getFullName 这个计算属性的值');let arr = value.split('-');this.firstName = arr[0];this.lastName = arr[1];}}}});
</script>
<script src="../js/vue.js"></script>
<script>Vue.config.productionTip = false;const vm = new Vue({el: '#root',data: {firstName: '张',lastName: '三'},computed: {getFullName: {get() {console.log(1);console.log('已通过 get 方式获取到了 getFullName 这个计算属性的值');return this.firstName + ' - ' + this.lastName;},set(value) {console.log('已通过 set 方式修改了 getFullName 这个计算属性的值');let arr = value.split('-');this.firstName = arr[0];this.lastName = arr[1];}}}});
</script>

Vue 计算属性的简写

computed: {// 原来的写法getFullName: {get() {console.log(1);console.log('已通过 get 方式获取到了 getFullName 这个计算属性的值');return this.firstName + ' - ' + this.lastName;},set(value) {console.log('已通过 set 方式修改了 getFullName 这个计算属性的值');let arr = value.split('-');this.firstName = arr[0];this.lastName = arr[1];}}// 如果只是读取(getter), 就可以写成这种形式getFullName() {console.log('get 被调用了');return this.firstName + '-' + this.lastName;}
}

Vue 计算属性 computed相关推荐

  1. vue计算属性computed和侦听属性watch的用法和区别

    计算属性computed是基于响应式进行缓存,所以在执行的时候效率高,且只执行一次,从缓存读取,除非data里面的数据有更改才重新调用.注意:计算属性里面必须要ruturn,否则无法拿到结果.计算属性 ...

  2. Vue计算属性- computed:{}

    七. Vue计算属性 计算属性的重点突出在属性两个字上(属性是名词),首先它是个属性其次这个属性有计算的能力(计算是动词),这里的计算就是个函数;简单点说,它就是一个能够将计算结果缓存起来的属性(将行 ...

  3. vue计算属性computed与监听属性watch的基本使用

    目录 Vue.js 计算属性 Vue.js 监听属性 Vue.js 计算属性 计算属性关键词: computed. 计算属性在处理一些复杂逻辑时是很有用的. 反转字符串的示例 <!DOCTYPE ...

  4. vue基础-动态class、动态style、vue过滤器、vue计算属性vue基础-动态class、动态style、vue过滤器、vue计算属性

    vue基础-动态class.动态style.vue过滤器.vue计算属性 文章目录 vue基础-动态class.动态style.vue过滤器.vue计算属性 vue基础-动态class vue基础-动 ...

  5. Vue - 计算属性

    1.vue计算属性-computed 一个数据, 依赖另外一些数据计算而来的结果 场景: 一个变量的值, 需要用另外变量计算而得来 语法: computed: {"计算属性名" ( ...

  6. vue教程2-03 vue计算属性的使用 computed

    vue教程2-03 vue计算属性的使用 computed computed:{b:function(){ //默认调用getreturn 值}}--------------------------c ...

  7. vue 计算属性和data_vue之watch和计算属性computed

    区别一:watch监听的是一个变量(或者一个常量)的变化,这个变量可能是一个单一的变化也可能是一个数组.computed可以监听很多个变量,但是这个变量一定是vue实例里面的. Vue 测试实例 - ...

  8. vue 计算属性_lt;Vue 源码笔记系列6gt;计算属性 computed 的实现

    1. 前言 原文发布在语雀: <Vue 源码笔记系列6>计算属性 computed 的实现 · 语雀​www.yuque.com 上一章我们已经学习过 watch,这一章就来看一下计算属性 ...

  9. Vue的计算属性computed和监听属性watch

    Vue的计算属性computed 定义 通过已有属性计算生成一个新的组合属性. 原理 底层借助了Object.defineproperty方法提供的getter和setter来实现. 性质 计算属性的 ...

最新文章

  1. [轉]Webdings字体图案
  2. dex文件结构(三):dex文件差分包分成
  3. ajax方法完整的事件流
  4. 计算机成绩表用函数怎么做,题用Excel函数以计算机成绩为依据计算出等次,怎么用函数IF 设定三个分类,如》90 为优秀 79~89为良好其余合格...
  5. mysql用if判断关联的表_mysql表连接,子查询以及if判断
  6. 云计算被视为继计算机,8+第八章+计算机网络技术分析.ppt
  7. NPOI 将DataGridView导出到Excel
  8. 的基本操作_Linux 基本操作命令总结
  9. python大学_大学为什么不先开python?
  10. 系统快捷方式java_java中这么创建界面快捷方式图标 代码
  11. Django中的form如何设置field的html属性呢?
  12. IT人士|不可不知的10个行业内幕
  13. Bitbucket 触发内网 Jenkins Build
  14. python 画ks曲线_风控模型—区分度评估指标(KS)深入理解应用
  15. Python使用webdriver爬取百度文库
  16. 广东医科大学计算机网络,广东海洋大学计算机网络历年考题(直接阅读版6套可编辑)课件.doc...
  17. 设计模式---装饰器模式(C++实现)
  18. java+vue+SSM215的病人跟踪治疗信息管理系统毕业设计
  19. 头条、油条商标有多像?Python检测发现相似度高达98.4%!
  20. PowerDesigner快速建表使用方法

热门文章

  1. 基于嵌入式linux的数码相框的设计,基于Linux NFS的Web数码相框设计
  2. mysql8安装目录linux7.5_Linux系统下 MySQL 5.7和8.0 版本安装指南
  3. map在Java集合_java集合之Map
  4. java 字节数组作用_这段java代码中字节数组b起到了什么作用?
  5. python socket 大文件_python之socket运用之传输大文件
  6. weakhashmap_Java WeakHashMap size()方法与示例
  7. c#hello world_C#| 打印消息/文本(用于打印Hello world的程序)
  8. NTFS USN的Create和工具代码汇总
  9. SQLite CodeFirst、Migration 的趟坑过程 [附源码]
  10. Snipaste在Window运行后遇到提示计算机中丢失 api-ms-win-crt-runtime-l1-1-0.dll 错误