@EnvirommentObjectを複数使用したい

SwiftUI

@EnvirommentObjectはViewのどこからでもアクセスできる便利なオブジェクトです。

Viewの浅い階層と深い階層で使用する場合に、リレーのように受け渡す手間を省くことが出来ます。

しかし、アプリ全体で全ての変数を使用するわけでなく、必要なViewで必要な変数だけ使用するとなると@EnvirommentObjectを複数使い分けたくなる場合があります。

その場合はメソッドチェーンでenvirommentObject()を連続して呼び出すことで、複数のオブジェクトを使用することができます。

let contentView = ContentView().environmentObject(ObsObj1())
    .environmentObject(ObsObj2())

コメント

タイトルとURLをコピーしました