小编Jer*_*emy的帖子

通过 Switch Case 进行 Angular ReactiveForm 错误处理

我有一个反应式表单,其中我使用 ngif 验证不同的字段。

例如:

  <mat-form-field>
  <input  matInput formControlName="name" placeholder="Name">
  <mat-error 
  *ngIf="personForm.get('name').hasError('required')">Name is 
   empty</materror>
  <mat-error *ngIf="personForm.get('name').hasError('minlength')">Needs more 
   than 3 characters</mat-error>
  </mat-form-field>
Run Code Online (Sandbox Code Playgroud)

是否有可能在 switch case 语句中做同样的事情以及如何继续这样做?

我想象了这样的事情

validateErrors {
  switch(errorHandling) {
  case 1: 'Name is empty';
  case 2: 'Needs more than 3 characters';
  }
}
Run Code Online (Sandbox Code Playgroud)

如何让 mat-errors 显示这些不同的情况?任何指导将不胜感激,谢谢!

error-handling switch-statement angular angular-reactive-forms angular-forms

2
推荐指数
1
解决办法
2702
查看次数

GraphQL + Apollo 错误:未捕获(承诺)

我正在尝试通过单击按钮将新数据提交到本地 graphQL API,但出现错误:错误错误:未捕获(承诺中):错误:网络错误:http://localhost:4000/的 Http 失败响应graphql:400 错误请求。

这个想法是,当您按下按钮时,就会提交新数据

  <button type="submit" (click)="onSubmit()" [disabled]="!personForm.valid" id="buttonSubmit" mat-raised-button color="accent"class="floated">Send</button>
Run Code Online (Sandbox Code Playgroud)

onSubmit 函数调用突变

  onSubmit() 
  {
    let id = 5;
    let vorname = 'user';
    let name =  'name';
    let email =  'testt@hotmail.com';
    let status =  'true';
    let activity =  'Office';

    this.apollo.mutate<CreateUserMutationResponse>({
      mutation: CREATE_USER_MUTATION,
      variables: {
        id: id,
        vorname: vorname,
        name: name,
        email: email,
        status: status,
        activity: activity
      }
    }).subscribe((response) => {

    });

    console.log('submitted');

  }
Run Code Online (Sandbox Code Playgroud)

我的 types.ts 中的突变看起来像这样

export const CREATE_USER_MUTATION = gql`
  mutation CreateUserMutation($id: ID!, $vorname: …
Run Code Online (Sandbox Code Playgroud)

javascript typescript apollo graphql

2
推荐指数
1
解决办法
9057
查看次数