vue中的计算属性和侦听属性


Posted in Javascript onNovember 06, 2020

计算属性

计算属性用于处理复杂的业务逻辑

计算属性具有依赖性,计算属性依赖 data中的初始值,只有当初始值改变的时候,计算属性才会再次计算

计算属性一般书写为一个函数,返回了一个值,这个值具有依赖性,只有依赖的那个值发生改变,他才会重新计算

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>表单输入绑定</title>
</head>
<body>
 <div id="app">

  {{ reverseMsg }}---- {{ reverseMsg }}-------- {{ reverseMsg }} //直接使用计算属性中的函数就是所要的数据

 </div>
</body>
<script src="vue.js"></script> //vue的js,不然使用不了vue语法
<script>
 const app = new Vue({
  el: '#app',
  data: {
   msg: 'hello world'
  },
  computed: {
   reverseMsg () { // 计算属性是一个函数,返回一个值,使用和data中的选项一样
    console.log('computed') // 执行1次 --- 依赖性
    return this.msg.split('').reverse().join('');
   }
  }
 })
</script>
</html>

侦听属性(监听属性)

vue提供了检测数据变化的一个属性 watch 可以通过  newVal 获取变化之后的值

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>表单输入绑定</title>
</head>
<body>
 <div id="app">
  <input type="text" v-model="firstname"> + <input type="text" v-model="lastname"> = {{ fullname }}

 </div>
</body>
<script src="vue.js"></script>
<script>
 const app = new Vue({
  el: '#app',
  data: {
   firstname: '李',
   lastname: '小龙',
   fullname: '李小龙'
  },
  watch: { // 侦听属性
   firstname (newVal, oldVal) { // newVal变化之后的值
    this.fullname = newVal + this.lastname // 当改变 姓 的时候执行
   },
   lastname (newVal, oldVal) {
    this.fullname = this.firstname + newVal // 当改变 名字 的时候执行
   }
  }
 })
</script>
</html>

以上就是vue中的计算属性和侦听属性的详细内容,更多关于vue 计算属性和侦听属性的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
Extjs 几个方法的讨论
Jan 28 Javascript
javascript innerHTML使用分析
Dec 03 Javascript
jQuery中$.fn的用法示例介绍
Nov 05 Javascript
js简单网速测试方法完整实例
Dec 15 Javascript
浅谈JS中的三种字符串连接方式及其性能比较
Sep 02 Javascript
JS实现给对象动态添加属性的方法
Jan 05 Javascript
用vue的双向绑定简单实现一个todo-list的示例代码
Aug 03 Javascript
Vue.js实现输入框绑定的实例代码
Aug 24 Javascript
react配合antd组件实现的管理系统示例代码
Apr 24 Javascript
微信小程序支付PHP代码
Aug 23 Javascript
vue路由跳转传参数的方法
May 06 Javascript
微信小程序批量监听输入框对按钮样式进行控制的实现代码
Oct 12 Javascript
nuxt.js添加环境变量,区分项目打包环境操作
Nov 06 #Javascript
使用Vue实现一个树组件的示例
Nov 06 #Javascript
Nuxt.js 静态资源和打包的操作
Nov 06 #Javascript
微信小程序基于ColorUI构建皮皮虾短视频去水印组件
Nov 04 #Javascript
vue 判断页面是首次进入还是再次刷新的实例
Nov 05 #Javascript
vue created钩子函数与mounted钩子函数的用法区别
Nov 05 #Javascript
解决nuxt页面中mounted、created、watch执行两遍的问题
Nov 05 #Javascript
You might like
星际争霸 Starcraft 发展史
2020/03/14 星际争霸
CentOS安装php v8js教程
2015/02/26 PHP
详解PHP的Yii框架中的Controller控制器
2016/03/29 PHP
PHP+Ajax异步带进度条上传文件实例
2016/11/01 PHP
jQuery的基本概念与高级编程
2015/05/14 Javascript
javascript从定义到执行 你不知道的那些事
2016/01/04 Javascript
jQuery 操作input中radio的技巧
2016/07/18 Javascript
详细谈谈AngularJS的子级作用域问题
2016/09/05 Javascript
想学习javascript JS和jQuery哪个重要 先学哪个
2016/12/11 Javascript
Vue.js 通过jQuery ajax获取数据实现更新后重新渲染页面的方法
2018/08/09 jQuery
Vue项目引进ElementUI组件的方法
2018/11/11 Javascript
分享一个vue项目“脚手架”项目的实现步骤
2019/05/26 Javascript
微信小程序getLocation 需要在app.json中声明permission字段
2020/03/03 Javascript
Vue项目配置跨域访问和代理proxy设置方式
2020/09/08 Javascript
python处理大数字的方法
2015/05/27 Python
Python验证码识别的方法
2015/07/10 Python
Python引用模块和查找模块路径
2016/03/17 Python
python 对key为时间的dict排序方法
2018/10/17 Python
python之cv2与图像的载入、显示和保存实例
2018/12/05 Python
python 使用turtule绘制递归图形(螺旋、二叉树、谢尔宾斯基三角形)
2019/05/30 Python
Python中的支持向量机SVM的使用(附实例代码)
2019/06/26 Python
python百行代码自制电脑端网速悬浮窗的实现
2020/05/12 Python
HTML5拖拽文件上传的示例代码
2021/03/04 HTML / CSS
美国婚礼和派对礼品网站:Kate Aspen(新娘送礼会、迎婴派对)
2018/03/28 全球购物
Opodo英国旅游网站:预订廉价航班、酒店和汽车租赁
2018/07/14 全球购物
苏格兰在线威士忌商店:The Whisky Barrel
2019/05/07 全球购物
英国最大的汽车配件在线商店:Euro Car Parts
2019/09/30 全球购物
在校大学生个人的自我评价
2014/02/13 职场文书
《小石潭记》教学反思
2014/02/13 职场文书
法学专业毕业生自荐信
2014/06/11 职场文书
就业意向协议书
2015/01/29 职场文书
幼师辞职信怎么写
2015/02/27 职场文书
刑事辩护词范文
2015/05/21 职场文书
2016年领导干部正风肃纪心得体会
2015/10/09 职场文书
Python 如何将integer转化为罗马数(3999以内)
2021/06/05 Python
Python Django项目和应用的创建详解
2021/11/27 Python