tasks.page.html 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. <ion-header>
  2. <ion-toolbar>
  3. <ion-title>任务管理</ion-title>
  4. </ion-toolbar>
  5. </ion-header>
  6. <ion-content>
  7. <div *ngIf="tasks.length === 0" class="empty-tasks">
  8. <ion-text color="medium">
  9. <h2>您的任务空空如也,来添加一些任务吧!</h2>
  10. </ion-text>
  11. </div>
  12. <script>
  13. confirmBtn.addEventListener('click', function() {
  14. // 这里处理保存逻辑,但在这个示例中我们只是简单地更新显示
  15. taskTime.textContent = editTime.value;
  16. taskName.textContent = editName.value;
  17. // 隐藏编辑用的输入框和确认按钮,重新显示原始的时间和任务
  18. editTime.style.display = 'none';
  19. editName.style.display = 'none';
  20. confirmBtn.style.display = 'none';
  21. taskTime.style.display = 'inline';
  22. taskName.style.display = 'inline';
  23. // 可以在这里添加将更改发送到服务器的代码
  24. });
  25. </script>
  26. <ion-list *ngIf="tasks.length > 0">
  27. <!-- <ul>
  28. <li *ngFor="let item of list; let i = index">{{item.get('starttime')}}~{{item.get('endtime')}}{{item.get('name')}}</li>
  29. </ul> -->
  30. <ion-item-sliding *ngFor="let task of list2; let i = index">
  31. <ion-item>
  32. <ion-button fill="outline" (click)="editTask(i)" slot="start" class="edit-button">
  33. <ion-icon name="create-outline"></ion-icon>
  34. </ion-button>
  35. <ion-label *ngIf="!task.editing" class="time-label">{{task.startTime}} - {{task.endTime}}</ion-label>
  36. <div *ngIf="task.editing" class="time-edit">
  37. <ion-input [(ngModel)]="task.startHour" (ionBlur)="formatHour(task, 'start')" placeholder="时" type="text" inputmode="numeric" maxlength="2" class="time-input"></ion-input>
  38. <span>:</span>
  39. <ion-input [(ngModel)]="task.startMinute" (ionBlur)="formatMinute(task, 'start')" placeholder="分" type="text" inputmode="numeric" maxlength="2" class="time-input"></ion-input>
  40. <span> - </span>
  41. <ion-input [(ngModel)]="task.endHour" (ionBlur)="formatHour(task, 'end')" placeholder="时" type="text" inputmode="numeric" maxlength="2" class="time-input"></ion-input>
  42. <span>:</span>
  43. <ion-input [(ngModel)]="task.endMinute" (ionBlur)="formatMinute(task, 'end')" placeholder="分" type="text" inputmode="numeric" maxlength="2" class="time-input"></ion-input>
  44. </div>
  45. <ion-label *ngIf="!task.editing" class="content-label">{{task.content}}</ion-label>
  46. <ion-input *ngIf="task.editing" [(ngModel)]="task.content" class="content-input"></ion-input>
  47. <ion-button *ngIf="task.editing" (click)="saveTask(i)" slot="end" class="save-button">
  48. <ion-icon name="checkmark-outline"></ion-icon>
  49. </ion-button>
  50. <ion-label *ngIf="!task.editing" class="time-label">{{task.starttime}} - {{task.endtime}}</ion-label>
  51. <div *ngIf="task.editing" class="time-edit">
  52. <ion-input [(ngModel)]="task.startHour" (ionBlur)="formatHour(task, 'start')" placeholder="时" type="text"
  53. inputmode="numeric" maxlength="2" class="time-input"></ion-input>
  54. <span>:</span>
  55. <ion-input [(ngModel)]="task.startMinute" (ionBlur)="formatMinute(task, 'start')" placeholder="分" type="text"
  56. inputmode="numeric" maxlength="2" class="time-input"></ion-input>
  57. <span> - </span>
  58. <ion-input [(ngModel)]="task.endHour" (ionBlur)="formatHour(task, 'end')" placeholder="时" type="text"
  59. inputmode="numeric" maxlength="2" class="time-input"></ion-input>
  60. <span>:</span>
  61. <ion-input [(ngModel)]="task.endMinute" (ionBlur)="formatMinute(task, 'end')" placeholder="分" type="text"
  62. inputmode="numeric" maxlength="2" class="time-input"></ion-input>
  63. </div>
  64. <ion-label *ngIf="!task.editing" class="content-label">{{task.name}}</ion-label>
  65. <ion-input *ngIf="task.editing" [(ngModel)]="task.content" class="content-input"></ion-input>
  66. <ion-button *ngIf="task.editing" (click)="saveTask(i)" slot="end" class="save-button">
  67. <ion-icon name="checkmark-outline"></ion-icon>
  68. </ion-button>
  69. </ion-item>
  70. <ion-item-options side="end">
  71. <ion-item-option color="danger" (click)="deleteTask(i)" class="delete-button">删除</ion-item-option>
  72. </ion-item-options>
  73. </ion-item-sliding>
  74. </ion-list>
  75. <ion-fab vertical="bottom" horizontal="center" slot="fixed">
  76. <ion-fab-button (click)="addTask()">
  77. <ion-icon name="add-outline"></ion-icon>
  78. </ion-fab-button>
  79. </ion-fab>