2017-09-15 4 views
0

firebase dbに次の構造体が必要です。ファイヤーベースデータベース用に正しくフォーマットされたオブジェクトを押し出す

"thumbnails": { 
    "72": "http://url.to.72px.thumbnail", 
    "144": "http://url.to.144px.thumbnail" 
} 

は、私は彼らがデシベルにプッシュする前に値を計算し、正しくような構造のキー72、144を得ることに苦労しています。それらは画像のピクセルを表します。

let pixel = this.calcPixels(); 

let obj = ????? 

var updates = {}; 
updates['/guid/thumbnails/'] = obj; 

let masterRef = this.db.database.ref(); 
masterRef.update(updates); 

私は何をしようとしていますが、これは明らかに機能しません。

let obj = { pixel : this.getUrl()} 

送信するクラスは作成できますが、クラスメンバー名(pixelx、urlx)はサーバー上のキーになります。

"thumbnails": { 
    "pixelx": 72 
    "urlx": "http://url.to.72px.thumbnail", 
} 

おかげ -

class PixelData{ 
    pixelx:number; 
    urlx:string; 

    constructor(p:number,u:string){ 
    this.pixelx = p; 
    this.urlx = u; 
    } 
} 

下記(サムネイル下firebaseプッシュIDと押す)このOBJ結果を設定します。

答えて

1

ただ後者の場合には、それはピクセル変数の値を取る一方で、それは文字列としてピクセルを取って、あなたのケースでは

let obj = { [pixel] : this.getUrl()} 

let obj = { pixel : this.getUrl()} 

を変更します。

関連する問題