前提・実現したいこと
Firebaseに保存した配列をアプリ内の変数に保存したいです。
発生している問題・エラーメッセージ
シュミレーターで動かしてみたところ、保存されるべき配列の変数に何も入っていないというエラーが出てしまいます。自分で作成したコードではFirebase内の配列をうまく取り出せていないようです。
自分の認識では、このようになっています。
①"Keys"のなかをobserveSingleEventで一度だけ取り出す。
②userKeysにDataSnapshot.value(ここでは"Keys"に入っている配列)を入れ、
③その数だけfor in文が繰り返し、self.userKeys2に配列の要素が一つずつ入れられていく。
よってself.userKeys2にはFirebaseの"Keys"に入っている配列の要素が格納された。
該当のソースコード
ref.child("Keys").observeSingleEvent(of: .value) { (DataSnapshot) in let userKeys = DataSnapshot.value as? [String] for kagi in userKeys! { self.userKeys2.append(kagi) } }
試したこと
child("Keys")にはchildByAutoIdで作成されたもの、例えば「"-L_SsvaV30iIbYttezmS"」が入っています。
Keys
|__0:"-L_SsvaV30iIbYttezmS"
|__1:"-L_SsxH_fuj1x7lgENJ-"
・・・
・・・
この文字列を取り出したいのですがうまくいきません。解決していただける方、回答していただけたらと思います。
補足情報(FW/ツールのバージョンなど)
FirebaseのRealTime Firebaseを使っています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。