@rafaelmoura wrote:
I have in my page the following code to get image of camera:
takePicture() { this.photo = ''; const options: CameraOptions = { quality: 100, destinationType: this.camera.DestinationType.DATA_URL, encodingType: this.camera.EncodingType.JPEG, mediaType: this.camera.MediaType.PICTURE, allowEdit: true, // correctOrientation: false, targetWidth: 1000, targetHeight: 1000 } this.camera.getPicture(options) .then((imageDate) => { let base64image = 'data:image/png;base64,' + imageDate; this.photo = base64image; this.userService.uploadAndSave(this.user.user_id, this.photo, 'citizens') ////send 3 params to service }, (error) => { console.log(error) }) .catch((error) => { console.log(error) }) }in this code above, I send 3 parameters to service to save image profile in Firestore and Database
in Firestore I want in this order /users/citizens/…images.png
in Dababase I want users/citizens/image: ‘image…png’In my service I have the following code:
public uploadAndSave(user_id: string, image: any, path: string) { let contact = { user_id: user_id, image: image, url: '', fullPath: '' }; let storageRef = this.fb.storage().ref(); // Pega referência do Storage let basePath = `/users/${path}/` + contact.user_id; // A pasta onde será salva a imagem no FireStores contact.fullPath = basePath + '/' + contact.image + '.png'; // o nome da imagem será o nome do contato let uploadTask = storageRef.child(contact.fullPath).putString(contact.image.fileToUpload, 'base64'); // criar uma task para fazer upload uploadTask.on(firebase.storage.TaskEvent.STATE_CHANGED, (snapshot) => { var progress = (progress.snapshot.bytesTransferred / progress.snapshot.totalBytes) * 100; console.log(progress + "% done"); }, (error) => { console.error(error); }, () => { contact.url = uploadTask.snapshot.downloadURL; // com isso conseguimos exibir a imagem do contato depois this.update(contact, 'citizens'); }); }But I don’t to save image, someone please ?
Posts: 1
Participants: 1