vue基础--计算属性和监听器

Posted mr-simple001

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue基础--计算属性和监听器相关的知识,希望对你有一定的参考价值。

1.一些操作需要计算后才能得到的用计算属性,需要放在computed属性中代码如下:

<div id=‘app‘>
  <div>
    <label>宽:</label>
    <input type="text" v-model:value="width">
  </div>
  <div>
    <label>高:</label>
    <input type="text" v-model:value="heigth">
  </div>
  <div>面积:{{area}}</div>
</div>
  <script>
    new Vue({
      el:#app,
      data:{
        width:0,
        heigth:0
      },
      computed:{
        area(){
        return this.heigth * this.width
      }
    }
  })
</script>

2.计算属性的set:有set必须要写get,一下是省市区填写解析出来,或者是分别填写省市区拼接到汇总省市区代码如下:

<div id=‘app‘>
  <div>
    <label>省:</label>
    <input type="text" v-model:value="province">
  </div>
  <div>
    <label>市:</label>
    <input type="text" v-model:value="city">
  </div>
  <div>
    <label>区:</label>
    <input type="text" v-model:value="district">
  </div>
  <div>
    <label>地址:</label>
    <input type="text" v-model="address">
  </div>
</div>
<script>
  new Vue({
    el:#app,
    data:{
      province:"",
      city:"",
      district:""
    },
    computed:{
    address:{
      get(){
      let result=""
      if(this.province){
        result += this.province+""
    }
      if(this.city){
        result += this.city+""
    }
      if(this.district){
        result += this.district+""
    }
      return result
    },
    set(value){
      let result = value.split(/省|市|区/)
      if(result && result.length>0){
        this.province = result[0]
    }
      if(result && result.length>1){
        this.city = result[1]
    }
      if(result && result.length>2){
        this.district = result[2]
    }
  }
  }
  }
  })
</script>

未完。。

以上是关于vue基础--计算属性和监听器的主要内容,如果未能解决你的问题,请参考以下文章

Vue 开发实战基础篇 # 9:合理应用计算属性和侦听器

Vue学习计划(基础二)-模板语法,计算属性,侦听器

Vue基础教程(中篇)

Vue 过滤器计算属性侦听器 图解版 一目了然

vue2.0之监听属性的使用心得及搭配计算属性的使用

Vue基础系列(四四)计算属性-监听器-过滤器-混入-插件-网络请求-全局组件