Привет, я надеюсь, что все в безопасности, у меня эта проблема уже несколько дней. Я пытаюсь обновить информацию о пользователе и работает, за исключением фотографии, но моя форма не хочет читать файл. Я использовал другое подключение к нему: cameraource и cameraresulttype, чтобы иметь возможность использовать камеру и в браузере, дело в том, что она отлично работает в Desktop, но когда дело доходит до реального устройства android, оно не работает, я пытаюсь чтобы сделать какое-нибудь console.log (this.form.get ('photo'). value и в консоли браузера, работает нормально, я могу видеть файл img или фотографию, но в android это дает мне ноль. Пожалуйста, помогите, спасибо, что это файлы: `
ngOnInit() {
this.route.paramMap.subscribe(paramMap => {
if (!paramMap.has('userinfoId')) {
this.navCtrl.navigateBack('/tabs/tab/profile');
return;
}
this.userinfoId = paramMap.get('userinfoId');
this.isLoading = true;
this.userinfoSub = this.userinfoService
.getUserinfo(paramMap.get('userinfoId'))
.subscribe(
userInfo => {
this.userinfo = userInfo;
this.form = new FormGroup({
name: new FormControl(this.userinfo.name, {
updateOn: 'blur',
validators: [Validators.required, Validators.maxLength(18)]
}),
photo: new FormControl(null)
// {
// updateOn: 'blur',
// validators: [Validators.required]
// })
});
this.isLoading = false;
},
error => {
this.alertCtrl
.create({
header: 'An error occurred!',
message: 'Info could not be fetched. Please try again later.',
buttons: [
{
text: 'Okay',
handler: () => {
this.router.navigate(['/tabs/tab/profile']);
}
}
]
})
.then(alertEl => {
alertEl.present();
});
}
);
});
onUpdateUserInfo() {
if (!this.form.valid) {
return;
}
this.loadingCtrl
.create({
message: 'Updating...'
})
.then(loadingEl => {
loadingEl.present();
console.log(this.form.value.photo);
console.log();
console.log(this.form.get('photo').value);
this.userinfoService
.uploadImage(this.form.get('photo').value)
.pipe(
switchMap(uploadRes => {
return this.userinfoService
.updateUserInfo(
this.userinfo.id,
this.form.value.name,
uploadRes.imageUrl
);
})
)
.subscribe(() => {
loadingEl.dismiss();
this.form.reset();
this.router.navigate(['/tabs/tab/profile']);
});
});
}
}