Blogger Information
Blog 70
fans 1
comment 0
visits 53105
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
实例演示条件渲染-计算属性-侦听器属性
葡萄枝子
Original
709 people have browsed it

实例演示条件渲染-计算属性-侦听器属性

作业内容:实例演示条件渲染, 计算属性和侦听器,并比较计算属性与侦听器之间的区别,一定要实例演示才可以看到区别

  • 中引入 vue 库
  1. <!-- 引入vue框架库 -->
  2. <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

条件渲染 v-if, v-show

  1. <!-- 条件渲染 v-if, v-show -->
  2. <div class="app1">
  3. <!-- 条件渲染 v-if -->
  4. <!-- 满足条件时,才会添加到 dom 中 -->
  5. <p><input type="number" v-model="num" @change="changenum($event)" /></p>
  6. <p v-if="num >= 0 && num <= 10">num >= 0 && num <= 10</p>
  7. <p v-else-if="num > 10 && num <= 20">num > 10 && num <= 20</p>
  8. <p v-else>num < 0 || num> 20</p>
  9. <!-- 条件渲染 v-show -->
  10. <!-- num <= 20 时,v-show 隐藏,但 dom 中存在 -->
  11. <p v-show="num > 20">num > 20</p>
  12. </div>
  13. <script>
  14. const vm1 = new Vue({
  15. el: document.querySelector('.app1'),
  16. data() {
  17. return {
  18. num: 0,
  19. }
  20. },
  21. methods: {
  22. changenum(ev) {
  23. this.num = ev.target.value;
  24. }
  25. },
  26. });
  27. </script>
  • 输入框输入 21,v-else 和 v-show 图

条件渲染

计算属性和侦听器

  1. <!-- 计算属性和侦听器 -->
  2. <div class="app2">
  3. <p><input type="number" /> <button @click="clicknum($event)">sum</button></p>
  4. <p>sum = {{sum}}</p>
  5. <p v-for="(item, index) of watcharr" :key="index">{{index}} - {{item}}</p>
  6. </div>
  7. <script>
  8. const vm2 = new Vue({
  9. el: document.querySelector('.app2'),
  10. data() {
  11. return {
  12. num: 0,
  13. count: 0,
  14. watcharr: [],
  15. }
  16. },
  17. // 方法
  18. methods: {
  19. clicknum(ev) {
  20. this.num = ev.target.previousElementSibling.value;
  21. this.count ++;
  22. },
  23. },
  24. // 计算属性
  25. computed: {
  26. sum() {
  27. let sum = 0;
  28. for (let i = 0; i <= this.num; i++) {
  29. sum += i;
  30. }
  31. return sum;
  32. },
  33. },
  34. // 侦听器属性
  35. watch: {
  36. num(newvalue, oldvalue) {
  37. this.watcharr.push(`点击第 ${this.count} 次, 新值 ${newvalue}, 旧值 ${oldvalue}`);
  38. }
  39. }
  40. });
  41. </script>
  • 点击第2次 sum 按钮时,由于没有改变被检测的 num 值,页面并没有输出,第3次改变了输入的 num 值,watch 监测到,故第 3 次的点击,页面产生输出了。

计算属性和侦听器

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments