这篇文章主要为大家介绍了Vue的计算属性,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

1、何为计算属性:大白话讲就是计算出来的结果保存在属性当中,可以想象为缓存。

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <div id="app">
  9. <!--注意了同志们是currentTime1(),这里有加括号的,是方法调用.-->
  10. <p>currentTime1:{{currentTime1()}}</p>
  11. <!--这里的currentTime1是没有加括号的,通过属性进行调用的-->
  12. <p>currentTime2:{{currentTime2}}</p>
  13. </div>
  14. <script src="https://cdn.jsdelivr.net/npm/vue@2.5.21/dist/vue.min.js"></script>
  15. <script>
  16. var vm = new Vue({
  17. el: "#app",
  18. data: {
  19. message: "hello vue!"
  20. },
  21. methods: {
  22. currentTime1: function () {
  23. // 返回当前时间戳
  24. return Date.now();
  25. }
  26. },
  27. computed: {
  28. /*注意:这里就有计算属性了:而且methods和computed方法名不能相同。
  29. 重名之后只会调用methods方法*/
  30. currentTime2: function () {
  31. this.message;
  32. // 返回当前时间戳
  33. return Date.now();
  34. }
  35. }
  36. });
  37. </script>
  38. </body>
  39. </html>

运行结果:

可能咋一看好像没什么区别呀。

但是我们仔细思考一下,一个是方法,一个是属性。

如下所示:

  1. <div id="app">
  2. <!--注意了同志们是currentTime1(),这里有加括号的,是方法调用.-->
  3. <p>currentTime1:{{currentTime1()}}</p>
  4. <!--这里的currentTime1是没有加括号的,通过属性进行调用的-->
  5. <p>currentTime2:{{currentTime2}}</p>
  6. </div>

重点:属性是存值的,有新的值进来才会改变,不然就跟缓存一样,我们来看这个:

解释一下:

1.在1、2当中我们可以看出,一个是方法一个是属性,属性用方法来调用肯定是不行的。

2.在1、3当中我们可以看出,方法调用的值一直在变,但是属性调用的值没有改变这就跟他是缓存机制一样

3.在3、4、5当中我们就可以看出,当我们一旦改变了函数当中的值,就相当于改变了缓存中的值,那么他就会刷新值。
总结

调用方法时,每次都需要进行计算,既然有计算过程则必定产生系统开销,那如果这个结果是不经常变化的呢?此时就可以考虑将这个结果缓存起来。采用计算机属性可以很方便做到这一点。计算机属性的主要特性就是为了将不经常变化的计算结果进行缓存,以节约我们的系统开销。——-小伙伴们明白了吗?

本篇文章就到这里了,希望能够给你带来帮助。

更多相关文章

  1. android:numeric="integer"属性
  2. Android各种调用
  3. Android(安卓)NDK开发常见错误
  4. Android(安卓)Service
  5. Android调用系统 Set As Intent
  6. Intent在android中的几种用法
  7. android与h5简单交互(js调取android的拨打电话功能)
  8. 使用Toast(android中的一种提醒方式) & 建立监听 --4
  9. Android(安卓)EditText中添加图标的简单方法

随机推荐

  1. 抽离Android原生控件的方法
  2. Android TV webview禁止自动获取焦点 遥
  3. android studio打开react-native的androi
  4. Android(安卓)ViewPager与子控件点击事件
  5. Android学习札记15:对Android中View绘制流
  6. Android的Activity and Task Design
  7. Android 提供的一系列辅助系统开发工具
  8. Android(安卓)获取验证码倒计时实现
  9. Android本地数据存储之SQLite
  10. android UI学习书籍