如何正确使用Push()方法

时间:2019-01-10 15:19:27

标签: javascript firebase firebase-realtime-database

我正在尝试将图像上传到Firebase存储,并使用Web应用将此图像URL设置为实时数据库子元素。上传到存储部分工作正常。但是将下载URL推送到Firebase实时数据库不起作用。

我在下面引用了链接和一些youtube视频。

https://firebase.google.com/docs/storage/web/upload-files

<script>
  // Already Initialized Firebase

  var text = document.getElementById('name');
  var email = document.getElementById('email');
  var password = document.getElementById('password');

  var button = document.getElementById('button');


  var profilePic = document.getElementById('profilePic');


  var dbRefProfilepicUrl = firebase.database().ref().child('Web App').child('Users').child('Profilepicture URL');

  function ProfilepicUrl(snap){
  window.alert("ProfilepicUrl")
    var urlProf = snap.downloadURL;
    dbRefProfilepicUrl.push(urlProf);
  }

  function registerUser(){

  var Name = text.value;
  var Email = email.value;
  var Password = password.value;
  var Image = profilePic.files[0];
  window.alert(Name)

  var dbRefName = firebase.database().ref().child('Web App').child('Users').child('Name');
  var dbRefEmail = firebase.database().ref().child('Web App').child('Users').child('Email');
  var dbRefPassword = firebase.database().ref().child('Web App').child('Users').child('Password');

  dbRefName.set(Name);
  dbRefEmail.set(Email);
  dbRefPassword.set(Password);


  var imageRoot = firebase.storage().ref('users/' + "profile");

  imageRoot.put(Image).then(ProfilepicUrl);

  }

</script>

我希望将URL引用推送到数据库。但是这部分不起作用。

0 个答案:

没有答案