码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2019-12-21 18:46:22      阅读:78      评论:0      收藏:0      [点我收藏+]

标签:address   面积   type   mod   code   his   ESS   app   代码   

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基础--计算属性和监听器

标签:address   面积   type   mod   code   his   ESS   app   代码   

原文地址:https://www.cnblogs.com/Mr-Simple001/p/12077572.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!