import { Input, OnInit } from '@angular/core'; import { Component } from '@angular/core'; import { ModalController } from '@ionic/angular'; import { IonHeader, IonToolbar, IonTitle, IonContent, IonCard, IonCardContent, IonButton, IonCardHeader, IonCardTitle, IonCardSubtitle, IonInput, IonItem, IonLabel, IonList } from '@ionic/angular/standalone'; import { CloudUser } from 'src/lib/ncloud'; import { CommonModule } from '@angular/common'; // 导入 CommonModule @Component({ selector: 'app-modal-user-edit', templateUrl: './modal-user-edit.component.html', styleUrls: ['./modal-user-edit.component.scss'], standalone: true, imports: [ IonHeader, IonToolbar, IonTitle, IonContent, IonCard, IonCardContent, IonButton, IonCardHeader, IonCardTitle, IonCardSubtitle, IonInput, IonItem, IonLabel, IonList, IonCard, CommonModule // 添加 CommonModule ], }) export class ModalUserEditComponent implements OnInit { currentUser:CloudUser|undefined userData:any = {} userDataChange(key:string,ev:any){ let value = ev?.detail?.value if(value){ this.userData[key] = value } } constructor(private modalCtrl:ModalController) { this.currentUser = new CloudUser(); this.userData = this.currentUser.data; } ngOnInit() {} async save() { Object.keys(this.userData).forEach(key => { if (key === "age") { this.userData[key] = Number(this.userData[key]); } }); this.currentUser?.set(this.userData); // 这里使用 PUT 方法更新用户信息 const updatedUser = await this.currentUser?.save(); if (updatedUser) { this.modalCtrl.dismiss(updatedUser, "confirm"); } else { console.error("Failed to save user data"); } } cancel(){ this.modalCtrl.dismiss(null,"cancel") } } export async function openUserEditModal(modalCtrl:ModalController):Promise{ const modal = await modalCtrl.create({ component: ModalUserEditComponent, breakpoints:[0.7,1.0], initialBreakpoint:0.7 }); modal.present(); const { data, role } = await modal.onWillDismiss(); if (role === 'confirm') { return data; } return null }