Refresh world JSON on click

This commit is contained in:
Natsumi
2025-08-24 09:02:33 +12:00
parent 0054b9bf1f
commit 880c93d1ba
@@ -320,7 +320,7 @@
</div> </div>
</div> </div>
</div> </div>
<el-tabs> <el-tabs ref="worldDialogTabsRef" @tab-click="worldDialogTabClick">
<el-tab-pane :label="t('dialog.world.instances.header')"> <el-tab-pane :label="t('dialog.world.instances.header')">
<div class=""> <div class="">
<i class="el-icon-user" /> <i class="el-icon-user" />
@@ -928,20 +928,44 @@
}); });
const worldDialogRef = ref(null); const worldDialogRef = ref(null);
const worldDialogTabsRef = ref(null);
const worldDialogLastActiveTab = ref('');
watch( watch(
() => worldDialog.value.loading, () => worldDialog.value.loading,
(newVal) => { () => {
if (newVal) { if (worldDialog.value.visible) {
nextTick(() => { nextTick(() => {
if (worldDialogRef.value?.$el) { if (worldDialogRef.value?.$el) {
adjustDialogZ(worldDialogRef.value.$el); adjustDialogZ(worldDialogRef.value.$el);
} }
}); });
!worldDialog.value.loading && toggleLastActiveTab();
} }
} }
); );
function toggleLastActiveTab() {
if (worldDialogTabsRef.value.currentName === '0') {
worldDialogLastActiveTab.value = t('dialog.world.instances.header');
} else if (worldDialogTabsRef.value.currentName === '1') {
worldDialogLastActiveTab.value = t('dialog.world.info.header');
} else if (worldDialogTabsRef.value.currentName === '2') {
worldDialogLastActiveTab.value = t('dialog.world.json.header');
refreshWorldDialogTreeData();
}
}
function worldDialogTabClick(obj) {
if (worldDialogLastActiveTab.value === obj.label) {
return;
}
if (obj.label === t('dialog.world.json.header')) {
refreshWorldDialogTreeData();
}
worldDialogLastActiveTab.value = obj.label;
}
function displayPreviousImages(command) { function displayPreviousImages(command) {
previousImagesFileId.value = ''; previousImagesFileId.value = '';
previousImagesTable.value = []; previousImagesTable.value = [];