为什么我总是收到 "Cannot find '...' in scope" 错误?

Why do I keep getting a "Cannot find '...' in scope" error?

我正在尝试在类似于排行榜的应用程序上进行第二次查看。当游戏在 ContentView 上完成 10 轮后,我希望将计算出的分数存储并打印在 ScoreboardView 上(通过按钮访问)。我使用 @Binding 将分数变量从一个视图连接到另一个视图,但不断出现“超出范围”错误。有人知道为什么吗?这是我的 ScoreboardView 代码:

'''

import SwiftUI

struct scoreboardView: View {
    @Binding var score: Int
    var body: some View {
            List {
                ForEach(1..<9) {
                    Text("Game \([=11=]): \(score) ")
                }
            }
        }
    
}

struct scoreboardView_Previews: PreviewProvider {
    static var previews: some View {
        scoreboardView(score: $scoreTracker)
        }
}

'''

这不是我的最终代码,因此请忽略中间部分。但是,我在预览初始化的最后一行出现错误。

您的代码中没有定义任何名为 scoreTracker 的内容,但您正尝试在预览中使用它。相反,您可以传递一个常量来代替您的绑定(仅用于预览目的):

struct scoreboardView: View {
    @Binding var score: Int
    var body: some View {
        List {
            ForEach(1..<9) {
                Text("Game \([=10=]): \(score) ")
            }
        }
    }
}

struct scoreboardView_Previews: PreviewProvider {
    static var previews: some View {
        scoreboardView(score: .constant(50))
    }
}