本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2024-11(8)

Web前端开发进阶笔记5——分支循环结构、循环结构

发布于2021-05-30 12:05     阅读(1366)     评论(0)     点赞(13)     收藏(0)


1.分支结构:

示例:

  1. <div id='scorecontent'>
  2. <div>{{score}}</div>
  3. <input type="number" v-model="score" />
  4. <div v-if="score>=90"></div>
  5. <div v-else-if="score<90&&score>=80"></div>
  6. <div v-else-if="score<80&&score>=60"></div>
  7. <div v-else></div>
  8. <div v-show="flag">这是v-show</div>
  9. <button type="button" @click="clickshow">click toggle</button>
  10. </div>
  11. <script type="text/javascript">
  12. var vm = new Vue({
  13. el: "#scorecontent",
  14. data: {
  15. score: 10,
  16. flag: false
  17. },
  18. methods: {
  19. clickshow: function() {
  20. this.flag = !this.flag
  21. }
  22. }
  23. })
  24. </script>

这里我们要注意,当我们需要频繁切换显示的时候,我们使用v-show,如果我们有逻辑的显示,并且显示内容固定,我们使用v-if。

2.循环结构:

  1. <div id="content">
  2. <ul>
  3. <li v-for="item in fruit">{{item}}</li>
  4. <li v-for="(a,b) in fruit">{{a+'---'+b}}</li>
  5. <li v-for="item in fruitName">
  6. {{'名字:'+item.cname+' ename:'+item.ename+' 单价:'+item.forIn.a+' 个数:'+item.forIn.b+' TP:'+item.forIn.a*item.forIn.b}}
  7. </li>
  8. </ul>
  9. </div>
  10. <script type="text/javascript">
  11. var vm = new Vue({
  12. el: '#content',
  13. data: {
  14. fruit: ['apple', 'banana', 'orange'],
  15. fruitName: [{
  16. ename: 'apple',
  17. cname: '苹果',
  18. forIn: {
  19. a: 1,
  20. b: 2
  21. }
  22. },
  23. {
  24. ename: 'banana',
  25. cname: '香蕉',
  26. forIn: {
  27. a: 2,
  28. b: 3
  29. }
  30. },
  31. {
  32. ename: 'orange',
  33. cname: '橘子',
  34. forIn: {
  35. a: 3,
  36. b: 4
  37. }
  38. }
  39. ]
  40. }
  41. })
  42. </script>

如果我们使用key来写的话可以提高效能:

  1. <li :key='index' v-for="(item,index) in fruitName">
  2. {{'名字:'+item.cname+' ename:'+item.ename+' 单价:'+item.forIn.a+' 个数:'+item.forIn.b+' TP:'+item.forIn.a*item.forIn.b}}
  3. </li>

3.v-if和v-for的联合使用:

  1. <!-- 这里我们写一个for和if联合用法,并对对象实现操作,下面有原生JS的回忆 -->
  2. <li v-if="" v-for="(v,k,i) in newobj">{{i+','+k+','+v}}</li>

其中if可以对值进行判定来选择渲染。

原文链接:https://blog.csdn.net/HAC_SOUL/article/details/117323187




所属网站分类: 技术文章 > 博客

作者:哦八戒八戒

链接:http://www.qianduanheidong.com/blog/article/115924/1559a85399e023e5a21a/

来源:前端黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

13 0
收藏该文
已收藏

评论内容:(最多支持255个字符)