未捕获的typeError无法读取未定义的属性
uncaught typeError can not read property of undefined
我有两个javascript。一个是用于读取图像文件,我称之为"register.js"
var FileUpload = (function (fileElement) {
//code goes here other functions and stuff
function fileread (event) {
//code goes here
}
return {
files: fileread // assign fileread as property and return
};
}(document.getElementById('up')))
我添加了另一个名为"call.js"的文件,当"onChange"事件发生时,它将使用FileUpload对象读取文件
function load () {
console.log(FileUpload.files);
document.getElementById('up').addEventListener('change', FileUpload.files,false);
}
window.onload=load;
但无论我在哪里运行代码,都会出现以下错误。如何修复此错误?
create:115未捕获的类型错误:无法读取的属性"files"未定义
我猜您已经忘记使用module.exports
和require
了。在register.js
末尾添加:
module.exports = FileUpload;
在call.js
的开头添加:
var FileUpload = require('./register');
您需要将./register
更改为register.js的目录。由于节点采用javascript文件,因此可以省略.js
扩展名。
这就是问题所在:
return
{
files:fileread// assign fileread as property and return
};
Javascript中的分号是可选的,因此它不知道您是否要返回{files:fileread}。它认为return是一个语句,并且{files:fileread}则不同。
对此进行更改,一切都应该正常:
return {
files:fileread// assign fileread as property and return
};
相关文章:
- 未捕获的TypeError无法读取未定义的属性socialsharing
- angularjs无法读取未定义的属性then
- 无法读取未定义的属性“rid”
- 未捕获的类型错误: 无法读取未定义的属性“图像”
- 类型错误:无法读取未定义的属性“toString” - 为什么
- angular2形式-无法读取未定义的属性替换
- Highcharts错误“;无法读取未定义的属性“;
- 无法读取未定义的属性“最后”的未定义
- 运行此程序后出现错误,未捕获的类型错误:无法读取未定义的属性“推送”
- 无法读取未定义的属性“替换” - 替换 JS 生成的 HTML 中的文本
- 无法读取未定义的属性 - NodeJS,Express,Mongoose
- Google 表格脚本 - “无法读取未定义的属性”(如果不是)
- 无法读取未定义的属性“用户名” - 通过电子邮件在 Node.js 中发送表单数据
- 获取 无法读取未定义的引导轮播脚本的属性“偏移宽度”
- JavaScript 2d 数组导致“无法读取未定义的属性'未定义'”
- 无法读取未定义的属性“_handleNewFile”
- 无法读取未定义的属性“HTML5HISTORY”
- 未捕获的类型错误:无法读取未定义的属性“scrollTop”
- 无法读取未定义的属性“警报”
- 未捕获的类型错误: 无法读取未定义的 - 对象的属性