import { Component, OnDestroy, OnInit } from '@angular/core' import { SharedModule } from '../../shared/shared.module' import { ApiService } from 'app/services' import { UserFormComponent } from 'app/components/user-form/user-form.component' import { FormBuilder, FormControl, FormGroup } from '@angular/forms' import { FormValidators } from 'app/utils' import { NzMessageService } from 'ng-zorro-antd/message' import { Subscription } from 'rxjs' @Component({ standalone: true, imports: [SharedModule, UserFormComponent], selector: 'app-profile-basic', templateUrl: './profile-basic.component.html', styleUrls: ['./profile-basic.component.less'], }) export class ProfileBasicComponent implements OnInit, OnDestroy { constructor( public api: ApiService, private fb: FormBuilder, private msg: NzMessageService, ) {} formGroup!: FormGroup ngOnInit(): void { this.formGroup = this.fb.group({ name: new FormControl(this.api.authInfo.name, [FormValidators.required('请输入姓名')]), remark: new FormControl(this.api.authInfo.remark), }) } ngOnDestroy(): void {} public getValues() { let values = null if (FormValidators.validateFormGroup(this.formGroup)) { values = this.formGroup.value } return values } onSubmit() { const vals = this.getValues() if (vals) { this.api.saveUser({ ...this.api.authInfo, ...vals }).subscribe(() => { this.msg.success('保存成功') this.api.getAuthInfo(true).subscribe(() => {}) }) } } }