Не удается прочитать свойство 'prodid' из неопределенного в ClientEditComponent.updateClient

У меня есть Компонент, названный как "Клиентский компонент", использующий базу данных firebase для целей базы данных, компонент материала для целей проектирования. Я работаю над операциями CRUD, которые я создал, удалил, но столкнулся с проблемой в обновлении. Данные клиента отображаются в сетке, и когда я щелкаю значок редактирования, вызывается дочерний компонент, и открывается "Форма редактирования клиента", и все поля в форме также заполняются предыдущими данными, но после изменения нажмите кнопку обновления в случае ошибки.

Обновить код.

updateClient(prod){
    //this.clientservice.onUpdate(prodid);
    this.items.doc(prod.prodid).update({
      fname: this.fname,
      lname: this.lname,
      cemail: this.cemail,
      caddress: this.caddress,
      crole: this.crole,
    }).then(() => {
      console.log('Updated');
    })
  }

обслуживание

 onUpdate(prod){
        this.pro.collection("client").doc(prod).update(prod.prodid).then(function() {
            console.log("Document successfully Updated!");
        }).catch(function(error) {
            console.error("Error updating document: ", error);
        });
    }

Получите данные в сетке формы клиента.

ngOnInit() {

    this.firstFormGroup = this._formBuilder.group({
      fname: ['Test', Validators.required],
      lname: ['New test'],
      email: [''],
    });
    this.secondFormGroup = this._formBuilder.group({
      address: ['Test2', Validators.required],
      role: [''],
    });

    /////Client-Edit////
    this.route.params.subscribe(
      (params: Params) => {
        this.id = params['id'];
        this.editMode = params['id'] != null;
        this.initForm();
      })
  }

  id: string;
  editMode = false;

  initForm() {
    if (this.editMode) {
      let items: any = this.clientservice.getClient(this.id)
        .then((res:Client)=>{
            //this.client = res;
            this.firstFormGroup = this._formBuilder.group({
              fname:[res.fname],
              lname:[res.lname],
              email:[res.cemail],
            })
            this.secondFormGroup = this._formBuilder.group({
              address:[res.caddress],
              role: [res.crole]
            })
        });
    }
  }

0 ответов

Другие вопросы по тегам