|
138 | 138 | <n-descriptions-item> |
139 | 139 | <template #label> |
140 | 140 | 版本控制 |
141 | | - <n-button quaternary round type="primary"> |
| 141 | + <!-- <n-button quaternary round type="primary"> |
142 | 142 | <Icon name="ri:edit-2-line" class="mr-2" /> |
143 | | - </n-button> |
| 143 | + </n-button> --> |
144 | 144 | </template> |
145 | | - todo |
| 145 | + <n-switch |
| 146 | + v-model:value="versioningStatus" |
| 147 | + checked-value="Enabled" |
| 148 | + unchecked-value="Suspended" |
| 149 | + :loading="statusLoading" |
| 150 | + @update:value="handleChangeVersionStatus" /> |
146 | 151 | </n-descriptions-item> |
147 | 152 | </n-descriptions> |
148 | 153 | </n-card> |
@@ -177,18 +182,32 @@ const { headBucket, getBucketTagging, putBucketTagging, putBucketVersioning, get |
177 | 182 |
|
178 | 183 | /********versioning ***********************/ |
179 | 184 | const versioningStatus: any = ref("") |
| 185 | +const versionStatus = ref("Suspended") |
| 186 | +const statusLoading = ref(false) |
180 | 187 | // 获取版本控制状态 |
181 | 188 | const getVersioningStatus = async () => { |
182 | 189 | try { |
183 | 190 | const resp = await getBucketVersioning(bucketName.value) |
184 | | - console.log(1111, resp) |
185 | 191 | versioningStatus.value = resp.Status |
186 | 192 | } catch (error) { |
187 | 193 | console.error("获取版本控制状态失败:", error) |
188 | 194 | } |
189 | 195 | } |
190 | 196 | getVersioningStatus() |
191 | 197 |
|
| 198 | +const handleChangeVersionStatus = async (value: string) => { |
| 199 | + statusLoading.value = true |
| 200 | + putBucketVersioning(bucketName.value, value) |
| 201 | + .then(() => { |
| 202 | + message.success("修改成功") |
| 203 | + getVersioningStatus() |
| 204 | + }) |
| 205 | + .finally(() => { |
| 206 | + statusLoading.value = false |
| 207 | + versioningStatus.value = versioningStatus.value == "Suspended" ? "Enabled" : "Suspended" |
| 208 | + }) |
| 209 | +} |
| 210 | +
|
192 | 211 | /********versioning ***********************/ |
193 | 212 |
|
194 | 213 | /********tag ***********************/ |
|
0 commit comments