首页 > 解决方案 > Angular 路线在第一次单击按钮时不起作用

问题描述

我的角度应用程序中有一个列表和编辑视图。遇到一种特殊的行为,单击编辑表单上的保存按钮时,会通过 OK 按钮向用户显示保存确认警报。用户应在单击此确定按钮时导航回列表视图。但是,当用户第一次单击确认警报上的 OK 按钮时,没有任何反应。警报消失,但用户未导航到列表视图。当再次单击保存然后确定确认时,它按预期工作。用户被带回列表视图。

奇怪的是,这个问题只存在于非生产环境中。使用 HashLocationStrategy。建议,指点赞赏

谢谢

import { Location } from '@angular/common';

<button (click)="save()" class="button primary-button ">Save</button>

constructor(
    private _location: Location
  ) {

  }

public save(): void {
...
...
  this.rxs(this.myService.submitFor({
        var1, var2, var3, var4
      }).subscribe(
        (res: AjaxResponse<myModel>) => this.OnAfterSave(res, 'save'),
        err => this.OnSaveFailed(err)
      ));

}

private OnAfterSave(response: AjaxResponse<myModel>, type: string) {
    this.messageSvc.Alert(
      'Title',
      response.isError ? 'Error ! ' + response.errorMessage : 'Saved successfully',
      '',
      response.isError ? null : () => {
        this.showAll = false;
        this._location.back();
      });
  }

标签: angularangular-ui-router

解决方案


推荐阅读