vue计算属性get和set用法示例


Posted in Javascript onFebruary 08, 2019

本文实例讲述了vue计算属性get和set用法。分享给大家供大家参考,具体如下:

计算属性是什么:vue文档里是这么说的,模板中绑定太多的逻辑会让模板过重且难以维护。

换句话说,就是可以自己设置值(b值),这个值和data下定义的值(a值)存在某些关系,b的值是基于a的值,通过某些逻辑产生出来的值,b值可以直接拿到template里去用。当a的值发生变化的时候,b的值会跟着变化。就是计算属性中的默认值get。那set又是什么鬼?

b的值是基于a的变化而变化的,那么直接修改b的值的时候,会怎么样?这里会走进set方法里去。

总之一条:b的值始终是依赖a的值存在和变化的。最后渲染出来的a为100,b为110

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>vue计算属性get和set</title>
  <style>
  </style>
  <script src="https://cdn.bootcss.com/vue/2.4.4/vue.min.js"></script>
</head>
<body>
  <div id="app">
    <p>a的值是:{{a}}</p>
    <p>b的值是:{{b}}</p>
    <button @click="change">按钮</button>
  </div>
  <script>
    new Vue({
      el: '#app',
      data:{
        a:1
      },
      computed: {
       b: {
        // getter
        get: function () {
         return this.a + 10
        },
        // setter
        set: function (val) {
          this.a = val
        }
       }
      },
      methods:{
       change() {
       this.b = 100
       }
      }
    })
  </script>
</body>
</html>

这里使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码,可得如下运行结果:

vue计算属性get和set用法示例

vue计算属性get和set用法示例

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
JQuery index()方法使用代码
Jun 02 Javascript
jQuery 常见操作实现方式和常用函数方法总结
May 06 Javascript
JQuery设置获取下拉菜单某个选项的值(比较全)
Aug 05 Javascript
jQuery实现查找链接文字替换属性的方法
Jun 27 Javascript
js实现点击每个li节点,都弹出其文本值及修改
Dec 15 Javascript
常用的javascript设计模式
Jan 11 Javascript
jQuery实现获取隐藏div高度的方法示例
Feb 09 Javascript
js 获取图像缩放后的实际宽高,位置等信息
Mar 07 Javascript
js 去掉字符串前后空格实现代码集合
Mar 25 Javascript
node实现定时发送邮件的示例代码
Aug 26 Javascript
AngularJS 实现购物车全选反选功能
Oct 24 Javascript
js拖动滑块和点击水波纹效果实例代码
Oct 16 Javascript
vue多次循环操作示例
Feb 08 #Javascript
JS散列表碰撞处理、开链法、HashTable散列示例
Feb 08 #Javascript
ES6 对象的新功能与解构赋值介绍
Feb 05 #Javascript
Vue从TodoList中学父子组件通信
Feb 05 #Javascript
详解webpack编译速度提升之DllPlugin
Feb 05 #Javascript
基于Webpack4和React hooks搭建项目的方法
Feb 05 #Javascript
利用Dectorator分模块存储Vuex状态的实现
Feb 05 #Javascript
You might like
小偷PHP+Html+缓存
2006/11/25 PHP
PHP获取当前相对于域名目录的方法
2015/06/26 PHP
Laravel监听数据库访问,打印SQL的例子
2019/10/24 PHP
JS获取父节点方法
2009/08/20 Javascript
使用phantomjs进行网页抓取的实现代码
2014/09/29 Javascript
node.js中的fs.symlinkSync方法使用说明
2014/12/15 Javascript
浅谈jQuery构造函数分析
2015/05/11 Javascript
浅谈javascript原型链与继承
2015/07/13 Javascript
原生js实现放大镜效果
2017/01/11 Javascript
详解Angualr 组件间通信
2017/01/21 Javascript
JavaScript模块详解
2017/12/18 Javascript
vue实现前进刷新后退不刷新效果
2018/01/26 Javascript
JavaScript解决浮点数计算不准确问题的方法分析
2018/07/09 Javascript
vue中axios实现数据交互与跨域问题
2019/05/12 Javascript
解决vuex数据异步造成初始化的时候没值报错问题
2019/11/13 Javascript
js实现轮播图效果 z-index实现轮播图
2020/01/17 Javascript
js实现百度淘宝搜索功能
2020/02/17 Javascript
windows下python模拟鼠标点击和键盘输示例
2014/02/28 Python
python实现简单的socket server实例
2015/04/29 Python
Python的Django框架中settings文件的部署建议
2015/05/30 Python
Python利用带权重随机数解决抽奖和游戏爆装备问题
2016/06/16 Python
python实现从文件中读取数据并绘制成 x y 轴图形的方法
2018/10/14 Python
Python常见读写文件操作实例总结【文本、json、csv、pdf等】
2019/04/15 Python
Django重置migrations文件的方法步骤
2019/05/01 Python
python爬虫-模拟微博登录功能
2019/09/12 Python
python 实现dict转json并保存文件
2019/12/05 Python
美国领先的医疗警报服务:Philips Lifeline
2018/03/12 全球购物
购买美国制造的相框和画框架:Picture Frames
2018/08/14 全球购物
微软新西兰官方网站:Microsoft New Zealand
2018/08/17 全球购物
Feelunique中文官网:欧洲最大化妆品零售电商
2020/07/10 全球购物
周鸿祎:教你写创业计划书
2013/12/30 职场文书
11.9消防日宣传标语
2014/10/08 职场文书
三行辞职书范文
2015/02/26 职场文书
草房子读书笔记
2015/06/29 职场文书
2015年庆祝国庆节66周年演讲稿
2015/07/30 职场文书
Java循环队列与非循环队列的区别总结
2021/06/22 Java/Android