fix(接口测试): 来回切换api或case时会出现关闭页签提示&下拉菜单执行当前api时执行无效&用例表格样式
--bug=1037675 --user=吕梦园 https://www.tapd.cn/55049933/bugtrace/bugs/view/1155049933001037675 --bug=1037365 --user=吕梦园 https://www.tapd.cn/55049933/bugtrace/bugs/view/1155049933001037365 --bug=1037796 --user=吕梦园 https://www.tapd.cn/55049933/bugtrace/bugs/view/1155049933001037796
This commit is contained in:
parent
3058e2f486
commit
ccfb4e1d19
|
@ -16,6 +16,7 @@
|
|||
:disabled="props.disabled"
|
||||
@press-enter="tagInputEnter"
|
||||
@blur="tagInputBlur"
|
||||
@change="(value) => emit('change', value)"
|
||||
@clear="emit('clear')"
|
||||
@click="emit('click')"
|
||||
>
|
||||
|
@ -100,7 +101,6 @@
|
|||
tagsLength.value = val.length;
|
||||
}
|
||||
emit('update:modelValue', val);
|
||||
emit('change', val);
|
||||
}
|
||||
);
|
||||
|
||||
|
|
|
@ -1286,6 +1286,7 @@
|
|||
if (isHttpProtocol.value) {
|
||||
try {
|
||||
if (!props.executeApi) return;
|
||||
await nextTick();
|
||||
requestVModel.value.executeLoading = true;
|
||||
requestVModel.value.response = cloneDeep(defaultResponse);
|
||||
const res = await props.executeApi(makeRequestParams(executeType));
|
||||
|
|
|
@ -304,6 +304,7 @@
|
|||
);
|
||||
|
||||
const loading = ref(false);
|
||||
const requestCompositionRef = ref<InstanceType<typeof requestComposition>>();
|
||||
async function openApiTab(
|
||||
apiInfo: ModuleTreeNode | ApiDefinitionDetail | string,
|
||||
isCopy = false,
|
||||
|
@ -314,6 +315,7 @@
|
|||
(e) => e.id === (typeof apiInfo === 'string' ? apiInfo : apiInfo.id)
|
||||
);
|
||||
if (isLoadedTabIndex > -1 && !isCopy) {
|
||||
const preActiveApiTabId = activeApiTab.value.id;
|
||||
// 如果点击的请求在tab中已经存在,则直接切换到该tab
|
||||
activeApiTab.value = {
|
||||
...(apiTabs.value[isLoadedTabIndex] as RequestParam),
|
||||
|
@ -321,6 +323,10 @@
|
|||
isExecute,
|
||||
mode: isExecute ? 'debug' : 'definition',
|
||||
};
|
||||
// requestCompositionRef里监听的是id,所以id相等的时候需要单独调执行
|
||||
if (preActiveApiTabId === apiTabs.value[isLoadedTabIndex].id) {
|
||||
requestCompositionRef.value?.execute(userStore.isPriorityLocalExec ? 'localExec' : 'serverExec');
|
||||
}
|
||||
return;
|
||||
}
|
||||
try {
|
||||
|
@ -383,12 +389,11 @@
|
|||
}
|
||||
|
||||
// 跳转到接口定义tab,且执行
|
||||
const requestCompositionRef = ref<InstanceType<typeof requestComposition>>();
|
||||
function toExecuteDefinition() {
|
||||
activeApiTab.value.definitionActiveKey = 'definition';
|
||||
activeApiTab.value.isExecute = true;
|
||||
activeApiTab.value.mode = 'debug';
|
||||
requestCompositionRef.value?.execute(userStore.localExecuteUrl ? 'localExec' : 'serverExec');
|
||||
requestCompositionRef.value?.execute(userStore.isPriorityLocalExec ? 'localExec' : 'serverExec');
|
||||
}
|
||||
|
||||
function handleDelete() {
|
||||
|
|
|
@ -37,6 +37,14 @@
|
|||
@drag-change="handleDragChange"
|
||||
@module-change="loadCaseList"
|
||||
>
|
||||
<template v-if="hasAnyPermission(['PROJECT_API_DEFINITION_CASE:READ+ADD']) && props.isApi" #empty>
|
||||
<div class="flex w-full items-center justify-center p-[8px] text-[var(--color-text-4)]">
|
||||
{{ t('apiTestManagement.tableNoDataAndPlease') }}
|
||||
<MsButton class="ml-[8px]" @click="createCase">
|
||||
{{ t('caseManagement.featureCase.creatingCase') }}
|
||||
</MsButton>
|
||||
</div>
|
||||
</template>
|
||||
<template #num="{ record }">
|
||||
<MsButton type="text" @click="isApi ? openCaseDetailDrawer(record.id) : openCaseTab(record)">{{
|
||||
record.num
|
||||
|
|
Loading…
Reference in New Issue