|  |  |  | 
|---|
|  |  |  | <nz-alert *ngIf="error" [nzType]="'error'" [nzMessage]="error" [nzShowIcon]="true" class="mb-lg"></nz-alert> | 
|---|
|  |  |  | <div nz-form-item> | 
|---|
|  |  |  | <div nz-form-control [nzValidateStatus]="userName"> | 
|---|
|  |  |  | <nz-input formControlName="userName" [nzPlaceHolder]="'admin'" [nzSize]="'large'"> | 
|---|
|  |  |  | <nz-input formControlName="userName" [nzSize]="'large'"> | 
|---|
|  |  |  | <ng-template #prefix> | 
|---|
|  |  |  | <i class="anticon anticon-user"></i> | 
|---|
|  |  |  | </ng-template> | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div nz-form-item> | 
|---|
|  |  |  | <div nz-form-control [nzValidateStatus]="password"> | 
|---|
|  |  |  | <nz-input formControlName="password" [nzPlaceHolder]="'888888'" [nzType]="'password'" [nzSize]="'large'"> | 
|---|
|  |  |  | <nz-input formControlName="password" [nzType]="'password'" [nzSize]="'large'"> | 
|---|
|  |  |  | <ng-template #prefix> | 
|---|
|  |  |  | <i class="anticon anticon-lock"></i> | 
|---|
|  |  |  | </ng-template> | 
|---|
|  |  |  | 
|---|
|  |  |  | <div nz-form-explain *ngIf="(password.dirty || password.touched) && password.errors?.required">请输入密码!</div> | 
|---|
|  |  |  | <p nz-form-explain [ngStyle]="{'color': 'red'}" *ngIf="validateError.password_incorrect">输入用户名或者密码错误!</p> | 
|---|
|  |  |  | <p nz-form-explain [ngStyle]="{'color': 'red'}" *ngIf="validateError.account_expired">账号已经过期,请联系供应商!</p> | 
|---|
|  |  |  | <p nz-form-explain [ngStyle]="{'color': 'red'}" *ngIf="validateError.server_offline">服务器处于离线状态!</p> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div nz-form-item nz-row> | 
|---|