Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.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 ';无法读取属性';文件名';未定义的';在MEAN Stack应用程序中实现图像上载时_Javascript_Node.js_Image_Mean_Multer - Fatal编程技术网

Javascript ';无法读取属性';文件名';未定义的';在MEAN Stack应用程序中实现图像上载时

Javascript ';无法读取属性';文件名';未定义的';在MEAN Stack应用程序中实现图像上载时,javascript,node.js,image,mean,multer,Javascript,Node.js,Image,Mean,Multer,我想通过为我的应用程序创建新的用户配置文件来实现图像上传的可能性。我查看了很多资源,但无法使其正常工作。创建新用户时,会收到以下错误消息: 无法读取未定义的属性“filename”,指向:图像:req.file.filename 谁能帮我解决出了什么问题? 这是我的设置: register.component.html: 上传图像 寄存器.component.ts: createForm(){ this.form=this.formBuilder.group( { 用户名:[ "", 验证器

我想通过为我的应用程序创建新的用户配置文件来实现图像上传的可能性。我查看了很多资源,但无法使其正常工作。创建新用户时,会收到以下错误消息:
无法读取未定义的属性“filename”,指向:
图像:req.file.filename

谁能帮我解决出了什么问题? 这是我的设置:

register.component.html


上传图像
寄存器.component.ts

createForm(){
this.form=this.formBuilder.group(
{
用户名:[
"",
验证器([
需要验证器,
验证器。最小长度(5),
验证器。最大长度(35),
这是你的名字,
]),
],
电邮:[
"",
验证器([
需要验证器,
验证器。最小长度(3),
验证器。最大长度(35),
这是一封电子邮件,
]),
],
密码:[
"",
验证器([
需要验证器,
验证器。最小长度(8),
验证器。最大长度(35),
这是一个密码,
]),
],
公司名称:[
"",
验证器([
需要验证器,
验证器。最小长度(8),
验证器。最大长度(35),
]),
],
电话:[
"",
验证器([
需要验证器,
验证器。最小长度(8),
验证器。最大长度(35),
]),
],
确认:[“”,验证器。必需],
文件:[“”],
},
{validator:this.matchingPasswords(“密码”、“确认”)}
);
}
服务器端:

user.js

const userSchema=新模式({
电邮:{
类型:字符串,
要求:正确,
独一无二:没错,
小写:true,
验证:电子邮件验证程序,
},
用户名:{
类型:字符串,
要求:正确,
独一无二:没错,
小写:true,
验证:用户名验证程序,
},
密码:{type:String,必需:true,validate:passwordValidators},
公司名称:{
类型:字符串,
必填项:false,
验证:companyNameValidators,
},
电话:{type:Number,必需:false,validate:companyPhoneValidators},
文件:{type:String},
});
身份验证路由:
authentication.js

var storage=multer.diskStorage({
目标:功能(请求、文件、cb){
cb(空,“/公共/”;
},
文件名:函数(请求、文件、cb){
cb(null,Date.now()+file.originalname);
},
});
常量文件过滤器=(请求、文件、cb)=>{
如果(
file.mimetype===“图像/jpeg”||
file.mimetype===“image/jpg”||
file.mimetype==“图像/png”
) {
cb(null,true);
}否则{
cb(空,假);
}
};
var upload=multer({
存储:存储,
限制:{
文件大小:1024*1024*5,
},
fileFilter:fileFilter,
});
router.post(“/register”)、upload.single(“文件”)、(req、res)=>{
让用户=新用户({
email:req.body.email.toLowerCase(),
用户名:req.body.username.toLowerCase(),
密码:req.body.password,
companyName:req.body.companyName,
电话:req.body.phone,
图像:req.file.filename,
});
user.save((错误)=>{
如果(错误){
如果(错误代码===11000){
//一些验证等等。。
}
}
});
});