错误TypeError:“无法在“ signUpForm”上分配给属性“ validator”:不是对象”

时间:2019-04-24 10:04:51

标签: angular html5 typescript

错误TypeError:“无法在“注册表单”上分配给属性“验证器”:不是对象”

我尝试了在同一问题中回答的所有解决方案,但没有用。 "can't assign to property "validator" on "formControlAnimalSelect": not an object" Angular Typescript

我还检查了TypeScript代码中的FormGroup和HTML中的form元素之间的链接,这是正确的。

  var list = new string[]
  {
    "6392d91a-b206-4b7b-a620-cd68e32c3a76",
    "76ece62b-bcfe-468c-8a78-839aeaa8c5fa",
    "8e0f21fa-9a5a-4ae7-a9a6-ca1f24294b86"
  };

  var listQuoted = list.Select(i => $"\"{i}\"");
  var commaSeparated = string.Join(",", listQuoted);
  var finalString = $"[{commaSeparated}]";
Klarna_Checkout_HTTP_Response {#874 ▼
  #status: 401
  #request: Klarna_Checkout_HTTP_Request {#885 }
  #headers: array:10 []
  #data: "{"http_status_code":401,"http_status_message":"Unauthorized","internal_message":"Unauthorized"}"
}

->addGateway('klarna', [
              'factory' => 'klarna_checkout',
              // 'merchant_id' => 'PK02135_5c3420512419',
              // 'secret' => 'IdljHoklduOnkoRg',
              'factory' => 'klarna_checkout',
                'merchant_id' => 'K639060_0d06b060deea',
                'secret' => 'xxxxxxxxxxxxx',
                   'sandbox'   => false
          ])

2 个答案:

答案 0 :(得分:0)

您的HTML应该看起来像

尝试一下:

<html>
<div class="row">
  <div class="col-sm-8 col-sm-offset-2">
    <h2>Create an account</h2>
    <form [formGroup]="signUpForm" (ngSubmit)="onSubmit()">
      <div class="form-group">
        <label for="email"> Email </label>
        <input type="text" id="email" class="form-control"
               formControlName="email">
      </div>

      <div class="form-group">
        <label for="password"> Password </label>
        <input type="password" id="password"
               class="form-control" formControlName="password">
      </div>
      <button class="btn btn-primary" type="submit"
              [disabled]="signUpForm.invalid"> Create account</button>
    </form>
    <p class="text-danger">{{errorMessage}}</p>
  </div>
</div>

答案 1 :(得分:0)

您必须错过绑定FormGroup,如果必须添加代码,这就是为什么会发生错误的原因。

HTML:

<div class="row">
  <div class="col-sm-8 col-sm-offset-2">
    <h2>Create an account</h2>
    <form [formGroup]="signUpForm" (ngSubmit)="onSubmit()">
      <div class="form-group">
        <label for="email"> Email </label>
        <input type="text" id="email" class="form-control"
               formControlName="email">
      </div>

      <div class="form-group">
        <label for="password"> Password </label>
        <input type="password" id="password"
               class="form-control" formControlName="password">
      </div>
      <button class="btn btn-primary" type="submit"
              [disabled]="signUpForm.invalid"> Create account</button>
    </form>
    <p class="text-danger">{{errorMessage}}</p>
  </div>
</div>

您还可以检查链接:

https://stackblitz.com/edit/angular-buks6o?file=src%2Fapp%2Fapp.component.ts