在SwiftUI
中,可以使用View对象的environmentObject
方法将单个BindableObject
放入环境中。
如果我想同时将多个BindableObjects
放入环境中怎么办?我在SwiftUI文档中没有找到任何解决方案。我不想在构造函数中传递对象。
答案 0 :(得分:4)
对environmentObject()
的调用返回一个(修改的)视图,因此您可以链接调用以将多个对象放入环境。示例:
let rootView = ContentView()
.environmentObject(firstBindable)
.environmentObject(secondBindable)
答案 1 :(得分:-2)
根据Apple官方指南,我猜测每个视图是否只有一个环境对象,那么这样做就可以了。当碰巧不止一个时,我不确定如何引用该对象。