デスク廻りから不要な情報を削除したい。
そうした場合、追加、作業を始めた時のsetと逆の作業をします。
ただ
dbdata.furnitureItems.[objectId].「削除する構文」
では機能しません。
deleteを頭に用いるのが正しい方法です。
deleteはオブジェクトを削除するための構文を作ることができます。
delete オブジェクト[プロパティ名];
delete dbdata.furnitureItems[objectId];
削除対象のプロパティ名(文字列や変数)をブラケット記法で指定しています。
今回の削除操作であれば、sofaやdeskといったobjectIdをキーとすることで、キーとその値の型であるオブジェクト、
例えば、{ type : sofa, color : black }を削除することができます。
furnitureItems:{
sofa:{type:sofa,color:red},
desk:{type:desk,color:brown},
}
sofaやdeskは、furnitureItemsオブジェクト内で一意に識別されるキー。
キーに対応する値が、{type:sofa,color:red}のようなオブジェクト型のデータです。
赤いソファを処分したいのであれば、
delete dbdata.furnitureItems[sofa];で、ソファーのキーとオブジェクトデータを削除することができます。
無印良品 ゆったり座れるアームレスソファ ブラウン 幅149×奥行74.5×高さ69cm 2シーター ポリエステル平織 12923039
delete dbdata[furnitureItems] のように、
オブジェクト自体に[ ]を使う必要はなく、プロパティ名を動的に削除指定したい場合に[ ]を使用します。
削除したい内容の階層をキーとして指定、
delete dbdata.furnitureItems[objectId];
のように記述する。
objectIdはキーであり、オブジェクトを識別するラベルのようなもの。
objectIdの値の型は場合によっては、文字列、関数等のケースがある。
deleteは、JavaScript内の構文。Firebase内では、remove( )を使う。
【Firebase関連動画、解説をご覧ください。】
【参考・学習サイト】更に学習される方は、こちらが参考になります。-ユーザーがふれる画面を作成する-