回答編集履歴

3

誤字修正

2023/01/02 02:19

投稿

TakeOne
TakeOne

スコア6299

test CHANGED
@@ -4,4 +4,4 @@
4
4
 
5
5
  提示されたコードを見ると、問題のプロパティ(`model`)は、`TermApp`の中で使用されていないようなので、不要ならここで`model`を宣言するのを削除するだけで良いと思います。
6
6
 
7
- 実際にはここで`model`を使用して画面を切り分ける処理を行なっていたりするのであれば、`TermApp`は単純に`ContentView`を呼び出すだけにして、`ContentView`の中で`model`を宣言して画面を切り分ける構造にすると、AppDelegateのdidFinishLaunchingWithOptionsが呼ばれた後にContentViewのプロパティ初期化が行われるので、うまく行くと思います。
7
+ 実際にはここで`model`を使用して画面を切り分ける処理を行いたのであれば、`TermApp`は単純に`ContentView`を呼び出すだけにして、`ContentView`の中で`model`を宣言して画面を切り分ける構造にすると、AppDelegateのdidFinishLaunchingWithOptionsが呼ばれた後にContentViewのプロパティ初期化が行われるので、うまく行くと思います。

2

誤字修正

2023/01/02 02:14

投稿

TakeOne
TakeOne

スコア6299

test CHANGED
@@ -4,4 +4,4 @@
4
4
 
5
5
  提示されたコードを見ると、問題のプロパティ(`model`)は、`TermApp`の中で使用されていないようなので、不要ならここで`model`を宣言するのを削除するだけで良いと思います。
6
6
 
7
- 実際にはここで`model`を使用して画面を切り分ける処理を行なっていたりするのであれば、`TermApp`は単純に`ContentView`を呼び出すだけにして、`ContentView`の中で`model`を宣言して画面切り分ける構造にすると、AppDelegateのdidFinishLaunchingWithOptionsが呼ばれた後にContentViewのプロパティ初期化が行われるので、うまく行くと思います。
7
+ 実際にはここで`model`を使用して画面を切り分ける処理を行なっていたりするのであれば、`TermApp`は単純に`ContentView`を呼び出すだけにして、`ContentView`の中で`model`を宣言して画面切り分ける構造にすると、AppDelegateのdidFinishLaunchingWithOptionsが呼ばれた後にContentViewのプロパティ初期化が行われるので、うまく行くと思います。

1

説明修正

2023/01/02 02:13

投稿

TakeOne
TakeOne

スコア6299

test CHANGED
@@ -1,9 +1,7 @@
1
1
  アプリのエントリポイント構造体(`TermApp`)の中で
2
- ``` swift
3
- @ObservedObject var model: WebViewModel = WebViewModel() //Firebaseからデータを取得する
2
+ `@ObservedObject var model: WebViewModel = WebViewModel() //Firebaseからデータを取得する`
4
- ```
5
- のようにFirebaseを使用するプロパティを初期化すると、AppDelegateのdidFinishLaunchingWithOptionsが
3
+ のようにFirebaseを使用するプロパティを初期化すると、AppDelegateのdidFinishLaunchingWithOptionsが呼ばれる前にFirebaseが使用されるので、質問のようなエラーが発生します。
6
- 呼ばれる前にFirebaseが使用されるので、質問のようなエラーが発生します。
7
4
 
8
- `TermApp`は単純に`ContentView`を呼び出すだけにして、`ContentView`の中でFirebaseにアクセスするプロパティを宣言して画面を切り分ける構造にすると、AppDelegatedidFinishLaunchingWithOptionsが呼ばれた後にContentViewのプロパティ初期化が行われ、うまく行くと思います。
5
+ 提示されたコードを見ると、問題のプロパティ(`model`)は、`TermApp`の中で使用されいないようなので不要ならここで`model`を宣言するのを削除すだけ良いと思います。
9
6
 
7
+ 実際にはここで`model`を使用して画面を切り分ける処理を行なっていたりするのであれば、`TermApp`は単純に`ContentView`を呼び出すだけにして、`ContentView`の中で`model`を宣言して画面に切り分ける構造にすると、AppDelegateのdidFinishLaunchingWithOptionsが呼ばれた後にContentViewのプロパティ初期化が行われるので、うまく行くと思います。