Как бороться с двойной подачей в Angular2

Если я быстро нажму на кнопку подтверждения, форма будет отправлена ​​два или более раз. Я думал, чтобы предотвратить это с помощью атрибута disabled, но мне нужна переменнаяdisableButon в любой форме, как это:

@Component({
    selector: 'example',
    template: `
      <form (submit)="submit()" >
        <--! Some Inputs -->
        <button [disabled]="disableButton" type="submit">Submit<button>
      </form>
       `
  })
  export class ExampleComponent {
    private disableButton: boolean = false;
    .......
    submit(){
      this.disableButton = true;
      /*
      * API call
      */
      this.disableButton = false;
    }
  }

Я делаю это правильно или есть более эффективный / элегантный способ сделать это?

Ответы на вопрос(5)

Ваш ответ на вопрос