fix(日志): 接口测试日志跳转 api、case、mock
This commit is contained in:
parent
8394a5a5c7
commit
3128e80916
|
@ -79,6 +79,9 @@ export const pathMap: PathMapItem[] = [
|
||||||
route: RouteEnum.API_TEST_MANAGEMENT,
|
route: RouteEnum.API_TEST_MANAGEMENT,
|
||||||
permission: [],
|
permission: [],
|
||||||
level: MENU_LEVEL[2],
|
level: MENU_LEVEL[2],
|
||||||
|
routeQuery: {
|
||||||
|
tab: 'api',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
key: 'API_TEST_MANAGEMENT_MOCK', // 接口测试-接口定义-mock
|
key: 'API_TEST_MANAGEMENT_MOCK', // 接口测试-接口定义-mock
|
||||||
|
@ -86,6 +89,9 @@ export const pathMap: PathMapItem[] = [
|
||||||
route: RouteEnum.API_TEST_MANAGEMENT,
|
route: RouteEnum.API_TEST_MANAGEMENT,
|
||||||
permission: [],
|
permission: [],
|
||||||
level: MENU_LEVEL[2],
|
level: MENU_LEVEL[2],
|
||||||
|
routeQuery: {
|
||||||
|
tab: 'mock',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
key: 'API_TEST_MANAGEMENT_CASE', // 接口测试-接口定义-case
|
key: 'API_TEST_MANAGEMENT_CASE', // 接口测试-接口定义-case
|
||||||
|
@ -93,6 +99,9 @@ export const pathMap: PathMapItem[] = [
|
||||||
route: RouteEnum.API_TEST_MANAGEMENT,
|
route: RouteEnum.API_TEST_MANAGEMENT,
|
||||||
permission: [],
|
permission: [],
|
||||||
level: MENU_LEVEL[2],
|
level: MENU_LEVEL[2],
|
||||||
|
routeQuery: {
|
||||||
|
tab: 'case',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
key: 'API_TEST_MANAGEMENT_RECYCLE', // 接口测试-回收站
|
key: 'API_TEST_MANAGEMENT_RECYCLE', // 接口测试-回收站
|
||||||
|
|
|
@ -107,6 +107,7 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
import { useRoute } from 'vue-router';
|
||||||
import { cloneDeep } from 'lodash-es';
|
import { cloneDeep } from 'lodash-es';
|
||||||
|
|
||||||
import { TabItem } from '@/components/pure/ms-editable-tab/types';
|
import { TabItem } from '@/components/pure/ms-editable-tab/types';
|
||||||
|
@ -180,6 +181,7 @@
|
||||||
(e: 'openCaseTab', apiCaseDetail: ApiCaseDetail): void;
|
(e: 'openCaseTab', apiCaseDetail: ApiCaseDetail): void;
|
||||||
}>();
|
}>();
|
||||||
|
|
||||||
|
const route = useRoute();
|
||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
const appStore = useAppStore();
|
const appStore = useAppStore();
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
|
@ -563,6 +565,12 @@
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
onBeforeMount(() => {
|
||||||
|
if (!['case', 'mock'].includes(route.query.tab as string) && route.query.id) {
|
||||||
|
openApiTab({ apiInfo: route.query.id as string });
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
defineExpose({
|
defineExpose({
|
||||||
openApiTab,
|
openApiTab,
|
||||||
addApiTab,
|
addApiTab,
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
import { useRoute } from 'vue-router';
|
||||||
import { cloneDeep } from 'lodash-es';
|
import { cloneDeep } from 'lodash-es';
|
||||||
|
|
||||||
import { TabItem } from '@/components/pure/ms-editable-tab/types';
|
import { TabItem } from '@/components/pure/ms-editable-tab/types';
|
||||||
|
@ -54,6 +55,8 @@
|
||||||
(e: 'deleteCase', id: string): void;
|
(e: 'deleteCase', id: string): void;
|
||||||
}>();
|
}>();
|
||||||
|
|
||||||
|
const route = useRoute();
|
||||||
|
|
||||||
const apiTabs = defineModel<RequestParam[]>('apiTabs', {
|
const apiTabs = defineModel<RequestParam[]>('apiTabs', {
|
||||||
required: true,
|
required: true,
|
||||||
});
|
});
|
||||||
|
@ -136,6 +139,12 @@
|
||||||
caseTableRef.value?.loadCaseList();
|
caseTableRef.value?.loadCaseList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
onBeforeMount(() => {
|
||||||
|
if (route.query.tab === 'case' && route.query.id) {
|
||||||
|
openCaseTab(route.query.id as string);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
defineExpose({
|
defineExpose({
|
||||||
openCaseTab,
|
openCaseTab,
|
||||||
openCaseTabAndExecute,
|
openCaseTabAndExecute,
|
||||||
|
|
|
@ -81,6 +81,7 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
import { useRoute } from 'vue-router';
|
||||||
import { cloneDeep } from 'lodash-es';
|
import { cloneDeep } from 'lodash-es';
|
||||||
|
|
||||||
import MsEditableTab from '@/components/pure/ms-editable-tab/index.vue';
|
import MsEditableTab from '@/components/pure/ms-editable-tab/index.vue';
|
||||||
|
@ -127,6 +128,7 @@
|
||||||
(e: 'import'): void;
|
(e: 'import'): void;
|
||||||
}>();
|
}>();
|
||||||
const appStore = useAppStore();
|
const appStore = useAppStore();
|
||||||
|
const route = useRoute();
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
const requestCompositionStore = useRequestCompositionStore();
|
const requestCompositionStore = useRequestCompositionStore();
|
||||||
|
|
||||||
|
@ -359,6 +361,13 @@
|
||||||
onBeforeMount(() => {
|
onBeforeMount(() => {
|
||||||
initMemberOptions();
|
initMemberOptions();
|
||||||
initProtocolList();
|
initProtocolList();
|
||||||
|
if ((route.query.tab as string) === 'case') {
|
||||||
|
currentTab.value = 'case';
|
||||||
|
currentTabChange('case');
|
||||||
|
} else if ((route.query.tab as string) === 'mock') {
|
||||||
|
currentTab.value = 'mock';
|
||||||
|
currentTabChange('mock');
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
useLeaveTabUnSaveCheck(apiTabs.value, [
|
useLeaveTabUnSaveCheck(apiTabs.value, [
|
||||||
|
|
Loading…
Reference in New Issue