簡體   English   中英

Angular 6 構建錯誤預期為 0 個參數,但在表單中得到 1 個參數

[英]Angular 6 build error Expected 0 arguments, but got 1 in form

我收到此錯誤:預期為 0 個參數,但在我構建項目時得到 1 個參數,但在ng-serve該項目正常嗎? 知道這可能是什么嗎? 錯誤指向: (ngSubmit)="onSubmit(serviceForm.value)"

我的 html 是:

<form class="form-horizontal" [formGroup]="serviceForm" (ngSubmit)="onSubmit(serviceForm.value)">
      <div class="form-group mb-8">
        <div class="col-3 col-sm-12">
          <label class="form-label" for="u_message_description">Please describe your issue:</label>
        </div>
        <div class="col-4 col-sm-12">
          <textarea class="form-input" id="u_message_description" placeholder="Describe your issue" rows="3"
            formControlName="u_message_description"></textarea>
          <h6 class="text-gray mt-2">The more information you can provide here, the easier time the organization will
            have in diagnosing and resolving your issue.</h6>
        </div>
      </div>

      <div class="columns col-12 col-sm-12">
        <div class="column col-10 col-sm-6 text-right">
          <button class="btn btn-link">Cancel</button>
        </div>
        <div class="column col-2 col-sm-6">
          <button class="btn btn-primary" [ngClass]="{'loading': uploading}" [disabled]="!serviceForm.valid" type="submit">Submit</button>
        </div>
      </div>
    </form>

組件.ts

import { Component, OnInit } from '@angular/core';
import { ReactiveFormsModule } from '@angular/forms';
import { FormGroup, FormControl } from '@angular/forms';
import { Validators } from '@angular/forms';
import { FormBuilder } from '@angular/forms';
import { Request } from '../../models/request.model'
import { Router } from '@angular/router';
import { Observable } from 'rxjs';
import { AppComponent } from '../../../app.component';
import { nowService } from '../../services/servicenow.service';
import { HttpClient, HttpEventType, HttpHeaders, HttpRequest, HttpResponse } from '@angular/common/http';


@Component({
  selector: 'app-service-request',
  templateUrl: './service-request.component.html',
  styleUrls: ['./service-request.component.scss']
})
export class ServiceRequestComponent implements OnInit {


  public loading = false;

  public uploading: boolean;

  private customer_id = 7; /// this.appComponent.customer_id;

  serviceForm;

  constructor(private service: nowService,
    private appComponent: AppComponent,
    private router: Router,
    private http: HttpClient,
  ) {
  }

  ngOnInit() {
    this.serviceForm = new FormGroup({
      u_short_description: new FormControl('', Validators.compose([
        Validators.required,
        Validators.minLength(0),
        Validators.maxLength(80)
      ])),
      u_message_description: new FormControl(''),
    });
  }

   onSubmit() {
    if(this.serviceForm.invalid) {
       this.serviceForm.setErrors({ ...this.serviceForm.errors, 'required': true });
       return;
    }
    //this.loading = true;
    this.uploading = true;
    this.service.postFormData(this.serviceForm.value).subscribe((response: any) => {
      console.log(response);//On success response
      this.router.navigate(['/inc/confirmation'],{queryParams: {value: response.result[0].display_value}});
    }, (errorResponse: any) => {
      console.log(errorResponse); //On unsuccessful response
    });
    }
  }

服務.ts

postFormData(payload) {
    return this.http.post(this.incidentApiUrl, payload, { headers: new HttpHeaders().set("Content-Type", "application/json") });
  }

您的“ onSubmit() ”方法不需要任何參數。 但是從你的 html 你用一個參數調用它:“ onSubmit(serviceForm.value)

我會從 html 中刪除參數,只需使用onSubmit()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM