Swift 无法在@Binding变量上使用ForEach循环

Swift 无法在@Binding变量上使用ForEach循环,swift,foreach,swiftui,binding,Swift,Foreach,Swiftui,Binding,我最近问了一个问题,但是被删除了,因为他们认为答案已经存在,所以我检查了这个问题。我尝试在代码中实现这里找到的解决方案,现在遇到了一个稍微不同的错误 基本上,我正在尝试创建一个简单的应用程序,其中包含可以单击以导航到具有编辑功能的详细视图的项目列表。数据是从JSON文件中读取的,这就是为什么数据位于绑定中,以便可以对其进行更新,而这在项目的其他任何地方都不是问题 import SwiftUI struct EateryList: View { @Binding var eaterie

我最近问了一个问题,但是被删除了,因为他们认为答案已经存在,所以我检查了这个问题。我尝试在代码中实现这里找到的解决方案,现在遇到了一个稍微不同的错误

基本上,我正在尝试创建一个简单的应用程序,其中包含可以单击以导航到具有编辑功能的详细视图的项目列表。数据是从JSON文件中读取的,这就是为什么数据位于绑定中,以便可以对其进行更新,而这在项目的其他任何地方都不是问题


import SwiftUI

struct EateryList: View {
    @Binding var eateries: [Eatery]
    var body: some View {
        NavigationView {
            VStack {
                List {
                    ForEach(eateries.indicies, id: \.self) { i in
                            NavigationLink(destination: EateryDetail(eatery: $eateries[i])) { //errors appear here
                               EateryRow(eatery: $eateries[i])
                           }
                        }
                }
                .navigationTitle("Favourite Eateries")
                .navigationBarItems(leading: EditButton(), trailing: Button( action: add)
                {
                    Image(systemName: "plus")
                    
                }
                    )
                     .listStyle(InsetGroupedListStyle())
            }
        }
        
    }
    func add() {
        eateries.append(Eatery(name: "Eatery", location: "Insert location here", notes: "Insert notes here", reviews: ["Insert reviews here"], url: "https://i.imgur.com/y3MMnba.png"))
    }
}
我得到3个错误与此代码目前我不完全理解

泛型结构“ForEach”要求“Binding”符合“RandomAccessCollection”

引用下标“subscript(dynamicMember:)”需要包装器“Binding”

类型“[Eatery]”的值没有使用根类型“[Eatery]”的键路径的动态成员“indicies”


现在非常感谢您的帮助,如果您需要进一步澄清项目的其他部分,请告诉我:)

这是一个拼写错误。它是
索引
而不是
索引

ForEach(eateries.indices, id: \.self) { i in //<-- Here
    NavigationLink(destination: EateryDetail(eatery: $eateries[i])) { 
        EateryRow(eatery: $eateries[i])
    }
}

ForEach(eateries.index,id:\.self){i in//Boy在这之后我会觉得自己很傻吗……一个由拼写错误引起的问题会使问题偏离主题。你应该投票结束这个问题,并留下解释拼写错误的注释,而不是回答问题。