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 相关文章推荐
js 判断文件类型并控制表单提交示例代码
Nov 14 Javascript
jquery批量设置属性readonly和disabled的方法
Jan 24 Javascript
基于JavaScript短信验证码如何实现
Jan 24 Javascript
JQuery解析XML的方法小结
Apr 02 Javascript
KnockoutJs快速入门教程
May 16 Javascript
微信小程序开发之录音机 音频播放 动画实例 (真机可用)
Dec 08 Javascript
js实现鼠标左右移动,图片也跟着移动效果
Jan 25 Javascript
详解Vue项目编译后部署在非网站根目录的解决方案
Apr 26 Javascript
layui 表格的属性的显示转换方法
Aug 14 Javascript
JS使用正则表达式提交页面验证的代码
Oct 16 Javascript
JavaScript实现简单随机点名器
Nov 21 Javascript
JS面向对象编程实现的拖拽功能案例详解
Mar 03 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
Can't create/write to file 'C:\WINDOWS\TEMP\...MYSQL报错解决方法
2011/06/30 PHP
PHP 下载文件时如何自动添加bom头及解释BOM头和去掉bom头的方法
2016/01/04 PHP
PHP/ThinkPHP实现批量打包下载文件的方法示例
2017/07/31 PHP
ThinkPHP中获取指定日期后工作日的具体日期方法
2018/10/14 PHP
JQuery实现自定义对话框的代码
2008/06/15 Javascript
使用Microsoft Ajax Minifier减小JavaScript文件大小的方法
2010/04/01 Javascript
Javascript延迟执行实现方法(setTimeout)
2010/12/30 Javascript
一个JQuery操作Table的代码分享
2012/03/30 Javascript
css+js实现部分区域高亮可编辑遮罩层
2014/03/04 Javascript
修改或扩展jQuery原生方法的代码实例
2015/01/13 Javascript
JQuery分屏指示器图片轮换效果实例
2015/05/21 Javascript
JS表格组件神器bootstrap table使用指南详解
2017/04/12 Javascript
jstree单选功能的实现方法
2017/06/07 Javascript
javascript checkbox/radio onchange不能兼容ie8处理办法
2017/06/13 Javascript
Angular2监听页面大小变化的解决方法
2017/10/09 Javascript
JS 实现百度搜索功能
2018/02/01 Javascript
Vue引入sass并配置全局变量的方法
2018/06/27 Javascript
webpack4+Vue搭建自己的Vue-cli项目过程分享
2018/08/29 Javascript
html-webpack-plugin修改页面的title的方法
2020/06/18 Javascript
jQuery实现开关灯效果
2020/08/02 jQuery
详解Python学习之安装pandas
2019/04/16 Python
python3实现高效的端口扫描
2019/08/31 Python
python编写softmax函数、交叉熵函数实例
2020/06/11 Python
pytorch 常用函数 max ,eq说明
2020/06/28 Python
Python hashlib和hmac模块使用方法解析
2020/12/08 Python
利用CSS3实现开门效果实例源码
2016/08/22 HTML / CSS
澳大利亚首屈一指的鞋类品牌:Tony Bianco
2018/03/13 全球购物
沙特阿拉伯网上购物:Sayidaty Mall
2018/05/06 全球购物
英国独特家具和家庭用品购物网站:Cuckooland
2020/08/30 全球购物
大学社团活动策划书
2014/01/26 职场文书
空气环保标语
2014/06/12 职场文书
课外科技活动总结
2014/08/27 职场文书
幼儿教师辞职信
2015/02/27 职场文书
入党宣誓大会后的感想
2015/08/10 职场文书
Mysql 设置boolean类型的操作
2021/06/04 MySQL
Python 数据可视化之Bokeh详解
2021/11/02 Python