vue学习中v-if和v-show一起使用的问题

v-if和v-show一起使用

在开发项目过程中v-if和v-show一起使用时,接下面跟着的v-else会在页面上面显示两次 。代码如下:


      
             {{index 1}}
             {{item.number}}
      
      
              暂无数据
     

原因其实很简单,根据vue的文档描述:
当它们都处于同一节点时,v-for 的优先级高于 v-if。这意味着,v-if 将分别在循环中的每次迭代上运行。
也就是v-if会判断两次。

当然这样用也有它的好处,当你只想将某些项渲染为节点时,这会非常有用,如下:(以上只渲染 todos 中未完成的项。)

  • {{ todo }}
  • 如果你的意图与此相反,是根据条件跳过执行循环,可以将 v-if 放置于包裹元素上(或放置于

    你可能感兴趣的:(前端,vue2)