您如何将 SwiftUI 应用程序命令连接到其他视图中的功能?

Bel*_*000 5 macos swift swiftui

在 WWDC20 上引入的新 SwiftUI 应用程序声明允许实现出现在菜单栏中的应用程序命令。这些应该如何连接到子视图中各自的功能?

示例代码

struct MyApp: App {
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
        .commands {
            CommandGroup(after: CommandGroupPlacement.newItem) {
                Button("Do something", action: {
                    // Call the function in SubView
                })
            }
        }
    }
}

struct SubView: View {
    var body: some View { ... }
    
    func doSomething() {
        
    }
}
Run Code Online (Sandbox Code Playgroud)

我想到的想法包括:

  • 通知中心
  • 合并出版商
  • 环境对象

实现这一目标的最佳实践是什么?
谢谢,非常感谢您的帮助。