加入收藏 | 设为首页 | 会员中心 | 我要投稿 我爱制作网_沈阳站长网 (https://www.024zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

vue的计算属 性有什么用?怎样运用?

发布时间:2022-11-14 11:15:04 所属栏目:语言 来源:
导读:   本文给大家分享vue的两个属性,分别是vue的计算属性和vue的侦听属性,那么究竟vue的计算属性和侦听属性有什么用呢?如何运用?接下来我们一起了解看看。
  
   计算属性
  
   计算属性用于处
   本文给大家分享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>
 

(编辑:我爱制作网_沈阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!