Javascript 无法从firebase的getDownloadURL获取URL

Javascript 无法从firebase的getDownloadURL获取URL,javascript,reactjs,firebase,firebase-storage,Javascript,Reactjs,Firebase,Firebase Storage,我使用firebase存储将我的图像存储到其中,图像很容易上传到存储中,但当我尝试获取图像表单promise的url时,它不会返回url const imageSaveHandler = (e) => { e.preventDefault(); const uploadTask = storage.ref(`images/${image.name}`).put(image); uploadTask.on( "state_changed&qu

我使用firebase存储将我的图像存储到其中,图像很容易上传到存储中,但当我尝试获取图像表单promise的url时,它不会返回url

  const imageSaveHandler = (e) => {
    e.preventDefault();
    const uploadTask = storage.ref(`images/${image.name}`).put(image);
    uploadTask.on(
      "state_changed",
      (error) => {
        console.log(error);
      },
      () => {
        return storage
          .ref(`images/${image.name}`)
          .getDownloadURL()
          .then((url) => {console.log(url)})
          .catch((err) => console.log(err));
      }
    );
  };

它看起来像是当前作为
uploadTask的第三个参数的处理程序。根据以下示例,on
应该是第四个参数:


请编辑此问题,进一步解释“它不返回任何内容”的含义。你到底是怎么观察到这一点的?毫无疑问,我的意思是,当我使用console.log(url)时,它不会向我返回url。所以,如果不是你所期望的,它到底做了什么?我对文件上传没有问题,我复制了youtube教程中的确切代码,但它对教程中使用console.log(url)的家伙有效他得到了URL尊重,我建议你试着理解你正在写的代码,而不是复制粘贴教程中的代码,因为教程发布后api可能已经发生了变化。非常感谢你,我在阅读了正确的文档后解决了它,抱歉,因为我才刚上大学一年级,因此,我不太了解发展世界
var uploadTask = storageRef.child('images/rivers.jpg').put(file);

// Register three observers:
// 1. 'state_changed' observer, called any time the state changes
// 2. Error observer, called on failure
// 3. Completion observer, called on successful completion
uploadTask.on('state_changed', function(snapshot){
  // Observe state change events such as progress, pause, and resume
  // Get task progress, including the number of bytes uploaded and the total number of bytes to be uploaded
  var progress = (snapshot.bytesTransferred / snapshot.totalBytes) * 100;
  console.log('Upload is ' + progress + '% done');
  switch (snapshot.state) {
    case firebase.storage.TaskState.PAUSED: // or 'paused'
      console.log('Upload is paused');
      break;
    case firebase.storage.TaskState.RUNNING: // or 'running'
      console.log('Upload is running');
      break;
  }
}, function(error) {
  // Handle unsuccessful uploads
}, function() {
  // Handle successful uploads on complete
  // For instance, get the download URL: https://firebasestorage.googleapis.com/...
  uploadTask.snapshot.ref.getDownloadURL().then(function(downloadURL) {
    console.log('File available at', downloadURL);
  });
});