首页 > 解决方案 > 如何使用提交按钮上传到 Firebase 存储

问题描述

我是 Firebase 的新手,我从Firebase存储库中获得了监听 HTML 文件输入框的代码,当您选择一个文件时,它会自动上传:

 window.onload = function() {
    document.getElementById('file').addEventListener('change', handleFileSelect, false);

我只是想让它仅在单击“提交”时才上传。我制作了一个按钮id="submit"并更改了事件侦听器:

window.onload = function() {
    document.getElementById('submit').addEventListener('click', handleFileSelect, false);

但我收到一个错误Cannot read property '0' of undefined。这来自 handleFileSelect 函数。我该如何解决?

function handleFileSelect(evt) {
    evt.stopPropagation();
    evt.preventDefault();
    var file = evt.target.files[0];

    var metadata = {
      'contentType': file.type
    };

    storageRef.child(file.name).put(file, metadata).then(function(snapshot) {
    }).catch(function(error) {
      console.error(error);
    });
  }

标签: javascriptfirebase

解决方案


推荐阅读