Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/91.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 试图将图像上载到firebase存储,但不断收到错误:无法读取属性';名称';未定义的_Javascript_Html_Image_Firebase Storage - Fatal编程技术网

Javascript 试图将图像上载到firebase存储,但不断收到错误:无法读取属性';名称';未定义的

Javascript 试图将图像上载到firebase存储,但不断收到错误:无法读取属性';名称';未定义的,javascript,html,image,firebase-storage,Javascript,Html,Image,Firebase Storage,您好,我正在尝试将图像上载到firebase存储,但在遵循firebase Official站点中的所有说明后,我正在尝试找出此错误: 未捕获的TypeError:无法读取未定义的属性“name” 上传文件时(gastro.js:72) 在HTMLButtonElement.onclick(gastro.html:57) 上传文件 提交//第二个错误在这里 正如我看到的,您使用了两种不同的功能来完成这项工作,第一种是fow获取输入,即handleFileSelect,另一种是uploadFi

您好,我正在尝试将图像上载到firebase存储,但在遵循firebase Official站点中的所有说明后,我正在尝试找出此错误:

未捕获的TypeError:无法读取未定义的属性“name” 上传文件时(gastro.js:72) 在HTMLButtonElement.onclick(gastro.html:57)


上传文件
提交//第二个错误在这里

正如我看到的,您使用了两种不同的功能来完成这项工作,第一种是fow获取输入,即
handleFileSelect
,另一种是
uploadFile
,因此我认为范围绑定存在问题。varibale位于您要访问的另一个作用域内。 您只需在访问变量之前先初始化它

而不是在上传函数中获取该文件的实例。 您可以直接使用标签
id
访问该文件

function uploadFile () {
   var selectedFile = document.getElementById('file');
  ---------- than same as you code ------------------
}

您的问题是,您从未填充引用dom元素的变量。 您应该确保在上载文件函数之前调用了函数handleFileSelect


但这很容易出错,很快就会遇到全局变量的问题。我建议您改进handleFileSelect以返回dom节点引用,并像这样使用它,而不是使用全局变量:

函数handleFileSelect(){
$(“.upload group”).show();
return document.getElementById('file').files[0];
};
函数uploadFile(){
var filename=handleFileSelect().name;

无法读取未定义的属性x-因此这看起来像
[undefined]['name']
这意味着
selectedFile
未定义,查看这部分代码,它从未定义,甚至未初始化。查看编辑
var selectedFile;
它已初始化,但仍未定义。在
上载文件之前,必须调用
handleFileSelect
*不初始化,但分配/定义。
>let variable;
已初始化,但仍未定义。我建议在同一上载函数中创建该变量,并使用javascript
文档对其进行实例化。getElementById
我按照您所说的方式进行了操作,但出现了以下错误:firebase.storage不是上载文件时的函数您可能更改了其他内容。您使用哪种方法?我提出了两种方法:一种是将handleFileSelect添加到更改事件中,另一种是。您应该只选择一种,而不是同时选择两种。