arrays - 将元素附加到数组后,它应该显示更多元素
问题描述
我有一个 ForEach 循环,当我单击卡片时,它会在数组中附加一个新元素,然后它应该显示 2 张卡片。但是还有一张卡。(但我附加了新的卡片元素)那我该怎么办?
struct TimelineFromUserView: View {
var card: [Card] = cardData
var body: some View {
VStack {
HStack {
Text("History").bold()
.font(.largeTitle)
.padding(.top, 20)
.padding(.leading, 20)
Spacer()
}
Divider()
ScrollView(.vertical, showsIndicators: false) {
VStack(spacing: 30) {
ForEach(card) { item in
CardForTimeline(card: item)
.onTapGesture {
print("juhuu")
cardData.append(Card(number: 2, start: "01.10.2021", end: "20.10.2021", days: 19, success: false))
print(cardData)
}
.padding()
}
}
.padding(.top, 10)
}
}
}
}
struct Card: Identifiable{
var id = UUID()
var number: Int
var start: String
var end: String
var days: Int
var success: Bool
}
var cardData: [Card] = [
Card(number: 1 ,start: "05.06.2020", end: "15.06.2020", days: 10, success: true)
]
解决方案
card
您只需将数组的副本传递cardData
到,ForEach
但如果我正确理解您的代码片段,它应该是原始数组cardData
。
如果这不是问题,那么发布更多代码会有所帮助。
推荐阅读
- bash - bash:在子文件夹中出现删除具有给定模式的文件的 IF 条件
- tensorflow - 在 TensorFlow 中 min_score_thresh 与 IoU 相关吗?
- twilio - Twilio 视频轨道附加未显示远程参与者的视频
- php - php 通过电子邮件或其他方式提醒管理员脚本错误
- python - 如何调用二维网格(2D bin)中坐标对应的值?
- javascript - 从 AJAX 帖子访问 C# 控制器中的表单数据
- apache-kafka - 如何在 3 节点 Ubuntu 机器上设置 Confluent
- r - Plotly:如何更新 R htmlwidget 图的显示配置
- azure - 如何从 Mule 中的 azure blob 存储下载大文件
- c# - 如何直观地“查看” Form.Designer.cs 文件?