在范围内找不到类型 'NSViewRepresentable'

Cannot find type 'NSViewRepresentable' in scope

我想在 SwiftUI 中使用 NSViewRepresentable 创建模糊视图,但是 XCode 给我一条错误消息,提示“无法在范围内找到类型 'NSViewRepresentable'”。

import SwiftUI

struct BlurWindow: NSViewRepresentable { //Cannot find type 'NSViewRepresentable' in scope

    func makeNSView(context: Context) -> NSVisualEffectView { //Cannot find type 'Context' in scope

        let view = NSVisualEffectView() //Cannot find type 'NSVisualEffectView' in scope
        view.blendingMode = .behindWindow
        return view
    }

    func updateNSView(_ nsView: NSVisualEffectView, context: Context) { //Cannot find type 'Context' in scope

    }
}

然而,当我将这段完全相同的代码复制并粘贴到一个全新的 Xcode 项目中时,没有任何错误。我搜索了整个 Google 和 Whosebug,但没有发现有同样问题的人。

您的项目有 iOS 目标吗?你在建立那个目标吗?如果是这样,请确保该文件未包含在此目标中(使用目标成员资格下的文件检查器),因为 NSViewRepresentable 在 iOS.

上不可用

或者,您可以将代码包装在 #if os(macOS)#endif.