vue.js - 如果数组中的值匹配,则Vue绑定类
问题描述
我正在显示表格数组,如果表格存在现有票证,我会打印票证号:
<div class="table-empty" v-for="table in tables" :key="table.id">
{{table.name}}
<div v-for="ticket in tickets" :key="ticket.id">
<p v-if="ticket.table_id === table.id">{{ticket.number}}</p>
</div>
<div>
如果该表有票,我想用“表满”类替换。我想不出一个解决方案,因为触发类的值在子 div 中,而类必须应用于父 div。
解决方案
您可以在父 div 中添加一个函数
在这里找到工作的 codepen:https ://codepen.io/chansv/pen/ExxgJBO
<div :class="emptyOrFull(table.id)" v-for="table in tables" :key="table.id">
{{table.name}}
<div v-for="ticket in tickets" :key="ticket.id">
<p v-if="ticket.table_id === table.id">{{ticket.number}}</p>
</div>
<div>
为脚本添加了一个方法
methods: {
emptyOrFull(id) {
if (this.tickets.map(x => x.table_id).includes(id)) return "table-empty";
else return "table-full"
}
推荐阅读
- wordpress - 使用 wp_insert_post() 创建后获取帖子 ID
- android - 使用原始文件夹中的 Glide 加载 gif
- windows - 如何使用 Windows 命令行将 NUL 写入文件夹中的所有日志文件
- java - 令人惊讶的入侵 Tomcat 日志文件
- git - 在终端中提交给 master 无法识别我的活动用户名
- unity3d - 将具有相同父级的 2 个脚本附加到相同的游戏对象
- c# - nopCommerce:定制模型
- ajax - ajax请求在数据对象中连接jason
- java - Spring MVC,休眠验证器
- php - 从带有 ID 的 span 内部刮取 href 属性值