Adding Data to Firebase Cloud Firestore and Angular
I used typescript spread operator
add(wizard: Wizard): Promise<DocumentReference> {
return this.wizardCollection.add({...wizard});
}
You can try this way, hope you are using latest typescript
product.ts
export interface Product {
code: string;
desc: string;
stock: number;
price: number;
off: number;
details?: string
}
in your product.component.ts
export class AdminProductComponent {
model:Product;
successMsg = 'Data successfully saved.';
productsRef: AngularFirestoreCollection<Product>;
product: Observable<Product[]>;
constructor(private afs: AngularFirestore) {
this.productsRef = this.afs.collection<Product>('productos');
this.model = {
code:'',
desc:'',
stock:0,
price:0,
off:0
}
}
save() {
this.productsRef.add(this.model).then( _ => alert(this.successMsg));
}
I think by doing this model = new Product('', '', 0, 0, 0);
you get an instance of the class not the object.
I used
save() {
const param = JSON.parse(JSON.stringify(this.model));
this.productsRef.add(param).then( _ => alert(this.successMsg));
}