vue.js - 模板中的VueJS条件类
问题描述
我有这个模板可以呈现每个项目的卡片。这些项目正在从 Firebase 中提取并存储在一个数组中
<template>
<div class="projects-wrapper">
<div class="individual-project"
v-bind:key="project.id"
v-for="project in projectsCollection"
:title="project.title"
>
<Project :project="project"
v-on:update-likes="updateLikes"
v-on:expand-card="expandCard"
v-on:close-card="closeCard" />
</div>
</div>
</template>
<script>
import Project from './Project'
export default {
name: 'Projects',
data() {
return {
projectsCollection: [],
}
},
我需要根据project
键的值实现调整卡片大小的功能(在本例中是“个人项目”div)。现在,我不能只使用:class="expanded-class, isExpanded"
where isExpanded 是其中的一个键,project
因为我需要遍历数组 (projectsCollection),然后遍历一个对象来获取这个值。因此模板看不到这个键并且无法应用该类。
一个人将如何处理这项任务?我对 Vue 还很陌生,所以我试图动态地解决问题。
解决方案
您可以将:class
(的简写v-bind:class
)传递为:
- 细绳:
:class="'my-class'"
- 目的:
:class={'my-class': expression }
- 大批:
:class=['my-class', (expression ? 'if-true': 'if-false')]
文档。
因此,在您的情况下,它将是,它会在is时:class="{'expanded-class': project.isExpanded }"
附加expanded-class
类。project.isExpanded
true
推荐阅读
- c# - 如何使用 XUnit 对 Web API 控制器进行单元测试
- c++ - 推断程序是否要使用线程
- flutter - 在 null 上调用了方法“[]”。接收方:空
- sql - 存储过程更新列的所有值
- javascript - 检测一个出现在另一个区域的div
- javascript - 如何在路由器的路由中使用 .js 文件组件
- servicestack - 服务器重新连接成功时不会触发服务堆栈服务器 OnReconnect 事件
- c# - 如何表示和序列化需要重复键的数据结构?
- google-api - 使用 Google Places API,如何获取矩形区域中的所有地点?
- node.js - Mongoose 聚合管道每次返回不同的结果