javascript - 在使用 Vue 列表渲染时,如何使用 v-if 来检查项目是否在数组中?
问题描述
我v-if
用来有条件地呈现咖啡馆列表。但是,我只希望它根据饮料项目是否列在数组中来列出项目。
例如,这是一个咖啡馆列表,我希望它只显示提供茶的咖啡馆。这可以做到吗?
HTML;
<div id="app">
<ul>
<li v-for="cafe in cafes" v-if="drinks == 'drinks('tea')'">
<h2>{{cafe.name}}</h2>
<p>{{cafe.location}}</p>
<span v-for="drinks in cafe.drinks">
{{drinks}}
</span>
</li>
</ul>
</div>
然后我的脚本如下;
new Vue({
el: '#app',
data() {
return {
cafes: [
{
name: 'The Black Cup Cafe',
location: 'Australia',
drinks: ['tea', 'coffee', 'Lemonade']
},
{
name: 'Rest Cafe bar',
location: 'Brazil',
drinks: ['tea', 'coffee', 'Coke']
}
]
}
}
})
解决方案
尝试这个。您可以使用包含来检查饮料阵列中的茶是否存在。
<div id="app">
<ul>
<li v-for="cafe in cafes" v-if="cafe.drinks.includes('tea')">
<h2>{{cafe.name}}</h2>
<p>{{cafe.location}}</p>
<span v-for="drinks in cafe.drinks">
{{drinks}}
</span>
</li>
</ul>
</div>
推荐阅读
- kubernetes - 如何更改正在运行的 pod 名称?
- r - 应用程序无法在 R Shiny 中启动(以代码 1 退出)
- excel - Excel VBA代码从网站获取数据
- mysql - 在函数节点中查询-red
- javascript - TypeError:无法读取未定义的属性“id”(message.mentions.users.first())
- c++ - connect() 在连接被拒绝时挂起很长时间
- visual-studio - 如何将 UWP 远程部署到 W10 IOT 设备(就像 VS17 一样)
- oracle12c - ORA-1458:变量字符串中的长度无效,ORA-01483:DATE 或 NUMBER 绑定变量的长度无效
- javascript - ES6 双重解构
- c# - 在多线程性能中读取静态变量与从 mongodb 读取