swift 类型“()”不能符合“View”错误-尝试追加数组时

h5qlskok  于 2023-01-16  发布在  Swift
关注(0)|答案(1)|浏览(120)

我只需要在String Array中添加歌曲名称,但是当我在ForEach循环中添加时,出现了一个错误:
类型“()”不能符合“View”。
为什么?我该怎么改正?
下面是我的主视图代码:

//
//  ContentView.swift
//  VideoSearch
//
//  Created by Nikita Kolomoec on 13.01.2023.
//

import SwiftUI
import AVKit

struct ContentView: View {
    @EnvironmentObject var model: ViewModel
    @State private var searchText = ""
    @State private var titleArray = [""]

    var body: some View {
        NavigationStack {
            List {
                ForEach(model.songs) { song in
                    titleArray.append(song.title)

                    NavigationLink {
                        VideoView(url: song.url, title: song.title)
                    } label: {
                        Text(song.title)
                    }
                }
            }
            .navigationTitle("All Videos")
        }
        .searchable(text: $searchText)
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
            .environmentObject(ViewModel())
    }
}
ppcbkaq5

ppcbkaq51#

而不是使用

@State private var titleArray = [""]

当你需要引用一个标题数组时你可以使用

model.songs.map(\.title)

相关问题