2017-09-15 32 views
0

我想在firebase数据库上使用以下结构。正确地为Firebase数据库格式化的推送对象

"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; 
    } 
} 

在下面(下缩略图与火力推ID推动)设置此OBJ结果。

回答

1

只要改变

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

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

在你的情况下,它以像素作为一个字符串,而在后一种情况下,将采取像素变量的值。

相关问题