在Angular中的更新过程中预填充表单中的数据

时间:2019-11-16 18:17:36

标签: angular

我是angular的新手,我有一个允许用户更新其信息的表格。我想用现有信息预先填充表格。据我所知,我很确定这必须输入到onSubmit()内部组件的.ts文件中。我曾尝试在Google上进行搜索,但是我需要一些更直接的指导。

更新注释,这可能是在ngOnInit()中完成的。...下面是我当前的情况

 ngOnInit(){
    this.route.paramMap.subscribe((paramMap: ParamMap ) => {
       if (paramMap.has('_id'))
         { this.mode = 'Update'; /*request had a parameter _id */ 
           this.id = paramMap.get('_id');}
       else {this.mode = 'Create';
           this.id = null; }
     });
    }

-

  onSubmit(){
    console.log('You submitted: ' + 
      this.firstName + ' ' + 
      this.lastName + ' ' + 
      this.email + ' ' + 
      this.phone + ' ' + 
      this.street + ' ' + 
      this.city + ' ' + 
      this.state + ' ' + 
      this.zip)

    if(this.mode =='Create')
      this._myService.addDrivers(
        this.firstName, 
        this.lastName, 
        this.email, 
        this.phone, 
        this.street, 
        this.city, 
        this.state, 
        this.zip,
        this.year,
        this.make,
        this.model

        );
    if(this.mode == 'Update')
      this._myService.updateDriver(
        this.id, 
        this.firstName, 
        this.lastName, 
        this.email, 
        this.phone, 
        this.street, 
        this.city, 
        this.state, 
        this.zip,
        this.year,
        this.make,
        this.model);
    this.router.navigate(['/listDrivers']);
       }

1 个答案:

答案 0 :(得分:0)

这应该在ngOnInit()

中完成
 ngOnInit() {
    this.firstName = 'Sam' // get the data from the service
    ...
  }