Vue.js条件:如果包含

彼得·瓦莱克

如果数组包含值,我需要在Vue中创建条件以进行检查。

items: { [1,5,8,12,63]}
                <div v-for="item in items">
                        <div v-if="item == 1">
                               Yes
                        </div>
                        <div v-else>
                            No
                        </div>
                </div>

输出为:是,否,否,否,否。

我只需要一次获得“是”和“否”。我需要:

是的不

Husam Ibrahim |

v-for只会遍历数组和v-if/v-else有条件地为数组中的每个项目渲染适当的代码块相反,您应该使用一种方法来检查items列表中是否包含数字您可以使用indexOf..

var app = new Vue({
  el: '#app',
  data: {
    items: [1, 5, 8, 12, 63]
  },
  methods: {
    itemsContains(n) {
      return this.items.indexOf(n) > -1
    }
  }
});
<div id="app">
  <div v-if="itemsContains(1)">
    Yes
  </div>
  <div v-else>
    No
  </div>
</div>

看到这个JSFiddle

您也可以摆脱此方法,并根据需要进行条件内联。

<div id="app">
  <div v-if="items.indexOf(1) > -1">
    Yes
  </div>
  <div v-else>
    No
  </div>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章