Javascript Firebase getDownloadURL从存储器无法设置Img Src
我试图复制这个问题的结果。我能够对有效的数据库子级调用Javascript Firebase getDownloadURL从存储器无法设置Img Src,javascript,firebase,firebase-storage,Javascript,Firebase,Firebase Storage,我试图复制这个问题的结果。我能够对有效的数据库子级调用getDownloadURL(),但它返回的结果似乎无法设置为IMG的src。 这是我当前用于尝试获取下载URL的代码: var storage = firebase.storage(); var storageRef = storage.ref(); var imgRef = storageRef.child('profile-pictures/1.jpg'); var pulledProfileImage = imgRef.getDown
getDownloadURL()
,但它返回的结果似乎无法设置为IMG的src
。
这是我当前用于尝试获取下载URL的代码:
var storage = firebase.storage();
var storageRef = storage.ref();
var imgRef = storageRef.child('profile-pictures/1.jpg');
var pulledProfileImage = imgRef.getDownloadURL();
然后,我通过执行以下操作将pulledProfileImage
推入数组:
dataArray.push(pulledProfileImage)
将数组(以及其他信息)发送给使用数据填充表的函数。此处使用以下代码引用图像本身:
cell1.innerHTML = '<img id="profileImage" src="'+dataArray[0]+'">';
奇怪的是,如果我让控制台通过调用console.log(Array[0].Wb)
从上面的列表中打印出一个不同的属性,比如说,Wb
,它可以完美地打印出false
。。。。每个布尔值似乎都很好,只是不是字符串或数字
作为参考,我的存储结构如下所示:
0:C
Hc:false
N:2
Pa:null
Wb:false
ja:null
na:"https://firebasestorage.googleapis.com/v0/b/app-name-da7a1.appspot.com/..."
s:null
----root
|
|------profile-pictures
|---------------------- img1.png <--the console is trying to print this one
|
|---------------------- img2.png
基本上,我的代码导航到子文件夹2,提取子值,然后进入存储并尝试从那里提取它们 这里的诀窍是getDownloadURL
是一个异步函数,恰好返回一个承诺(根据):
这将在本地工作,但URL列表不会在所有浏览器之间同步。相反,您想要的是使用数据库来同步URL,就像我们在Zero-to-App(,)中所做的那样。这里的技巧是getDownloadURL
是一个异步函数,恰好返回一个承诺(根据):
这将在本地工作,但URL列表不会在所有浏览器之间同步。相反,您需要的是使用数据库来同步URL,就像我们在Zero-to应用程序(,)中所做的那样。请共享此链接。您现在分享的片段留给了我们太多的想象。代码可能还取决于数据库的JSON结构,因此也要包含一个具有代表性的代码片段(作为文本,没有截图)。Frank,感谢您的回复。我改变了这个问题——现在的邮件问题是,只有boolean
值可以在引用时打印,但是numbers
和strings
不能打印。谢谢你还是没有和我分享。如果你在问题中包含这样的内容,你就更有可能得到帮助。弗兰克,你能检查一下编辑过的问题吗?谢谢请与我们分享。您现在分享的片段留给了我们太多的想象。代码可能还取决于数据库的JSON结构,因此也要包含一个具有代表性的代码片段(作为文本,没有截图)。Frank,感谢您的回复。我改变了这个问题——现在的邮件问题是,只有boolean
值可以在引用时打印,但是numbers
和strings
不能打印。谢谢你还是没有和我分享。如果你在问题中包含这样的内容,你就更有可能得到帮助。弗兰克,你能检查一下编辑过的问题吗?谢谢这个脚本在PHP中可用吗?php是一种在您自己的服务器上运行的后端语言,而我们展示的是直接在客户机上运行的JavaScript。它们是两个完全不同的东西,所以不能直接比较?php是一种在您自己的服务器上运行的后端语言,而我们展示的是直接在客户机上运行的JavaScript。他们是两个完全不同的东西,所以这不是一个直接的比较。
----root
|
|----folder1
|
|
|----subfolder1
|
|
|----subfolder2
|
|
|--------img1.png
|
|--------img2.png
var storage = firebase.storage();
var storageRef = storage.ref();
var imgRef = storageRef.child('profile-pictures/1.jpg');
// call .then() on the promise returned to get the value
imgRef.getDownloadURL().then(function(url) {
var pulledProfileImage = url;
dataArray.push(pulledProfileImage);
});