当前位置:   article > 正文

使用vue实现图片的显示和隐藏_v-show 图片的隐藏和显示控制

v-show 图片的隐藏和显示控制
  1. 涉及内容

v-for:可以实现页面列表渲染,常用来循环数组

v-if和v-show:v-if用来控制元素显示和隐藏,属性为布尔值。v-show可以实现与v-if同样的效果,但是v-show是操作元素的display属性,而v-if会对元素进行删除和重新创造,所以v-if在性能上不如v-show。(!v-show会取v-show的反向指令,出现隐藏效果)

组件:在vue中,组件是构成页面中独立结构单元,能够减少重复代码的编写,提高开发效率,降低代码之间的耦合程度,使项目更易维护和管理。

template:template模板是用字符串保存的,写在HTML中有利于在编辑器中显示代码提示和高亮显示,不仅改善了开发体验,也提高了开发效率。<template>标签来定义结构模板,通过id值绑定在组件内的template属性上。

2.代码

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title></title>
  6. <script src="js/vue.js"></script>
  7. <style>
  8. .content{
  9. width: 1100px;
  10. margin: 0 auto;
  11. border: 1px solid skyblue;
  12. display: flex;
  13. justify-content: space-between;
  14. flex-wrap: wrap;
  15. }
  16. .item{
  17. height:286px;
  18. width:213px;
  19. background-color: #7cc8c6;
  20. margin: 5px 0px;
  21. }
  22. </style>
  23. </head>
  24. <body>
  25. <div id="app">
  26. <div class="content" >
  27. <fu-img v-for="i in imgs" :im="i"></fu-img>
  28. </div>
  29. </div>
  30. <template id="test">
  31. <div class="item" @click="change">
  32. <img :src="im" v-show="show"/>
  33. </div>
  34. </template>
  35. <script>
  36. Vue.component("fu-img",{
  37. template:"#test",
  38. props:["im"],
  39. data:function(){
  40. return{
  41. show:true
  42. }
  43. },
  44. methods:{
  45. change:function(){
  46. this.show = !this.show;
  47. }
  48. }
  49. });
  50. var vm = new Vue({
  51. el:"#app",
  52. data:{
  53. imgs:["img/images/1_01.jpg",
  54. "img/images/1_02.jpg",
  55. "img/images/1_03.jpg",
  56. "img/images/1_04.jpg",
  57. "img/images/1_05.jpg",
  58. "img/images/1_06.jpg",
  59. "img/images/1_07.jpg",
  60. "img/images/1_08.jpg",
  61. "img/images/1_09.jpg",
  62. "img/images/1_10.jpg",
  63. "img/images/1_11.jpg",
  64. "img/images/1_12.jpg",
  65. "img/images/1_13.jpg",
  66. "img/images/1_14.jpg",
  67. "img/images/1_15.jpg",
  68. "img/images/1_16.jpg",
  69. "img/images/1_17.jpg",
  70. "img/images/1_18.jpg",
  71. "img/images/1_19.jpg",
  72. "img/images/1_20.jpg",
  73. "img/images/1_21.jpg",
  74. "img/images/1_22.jpg",
  75. "img/images/1_23.jpg",
  76. "img/images/1_24.jpg",
  77. "img/images/1_25.jpg"
  78. ]
  79. }
  80. });
  81. </script>
  82. </body>
  83. </html>

3.效果图

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/96522
推荐阅读