本文给大家分享vue的两个属性,分别是vue的计算属性和vue的侦听属性,那么究竟vue的计算属性和侦听属性有什么用呢?如何运用?接下来我们一起了解看看。
计算属性
计算属性用于处理复杂的业务逻辑
计算属性具有依赖性,计算属性依赖 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的计算属性和侦听属性的内容,大家可以关注其它的相关文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理