diff --git a/src/views/conda/TheConda.vue b/src/views/conda/TheConda.vue
index 69e4d9e0c2b13a6bf693e67741b435f35d4b0500..c5791b57a4bc954213dbc10ce5e52fb95ccf449f 100644
--- a/src/views/conda/TheConda.vue
+++ b/src/views/conda/TheConda.vue
@@ -1,14 +1,21 @@
-
-
+
+
+
+
+
+
diff --git a/src/views/conda/TheCondaDetail.vue b/src/views/conda/TheCondaDetail.vue
index 2195f8be335ccbe640e46eadae8e3a10a8030cbc..6e7cd8acd368a1e6656486a58293df48b9004816 100644
--- a/src/views/conda/TheCondaDetail.vue
+++ b/src/views/conda/TheCondaDetail.vue
@@ -4,7 +4,7 @@ import { isString } from '@opensig/opendesign';
import { maintainerDefaults } from '@/data/query';
import { useRoute } from 'vue-router';
import { useMarkdown } from '@/composables/useMarkdown';
-import type { AppInfoT, MaintainerT, DetailItemT, MoreMessgeT } from '@/@types/app';
+import type { AppInfoT, MaintainerT, DetailItemT } from '@/@types/app';
import { useI18n } from 'vue-i18n';
import { getDetails, getVer } from '@/api/api-domain';
import { useViewStore } from '@/stores/common';
@@ -26,7 +26,6 @@ const tabValue = ref('condapkg');
const maintainer = ref({ maintainerId: '', maintainerEmail: '', maintainerGiteeId: '' });
const security = ref();
-const moreMessge = ref([]);
const description = ref();
const appData = ref({
name: '',
diff --git a/src/views/epkg/EpkgContent.vue b/src/views/epkg/EpkgContent.vue
index 92b5549c7c0138f167e05f4ece879714620f3c07..ce0577f52061584eda759c9d7e2d0bdd69983db8 100644
--- a/src/views/epkg/EpkgContent.vue
+++ b/src/views/epkg/EpkgContent.vue
@@ -9,7 +9,7 @@ import { useI18n } from 'vue-i18n';
import { useLocale } from '@/composables/useLocale';
import { getParamsRules } from '@/utils/common';
import { isValidSearchTabName, isValidSearchKey } from '@/utils/query';
-import { TABNAME_OPTIONS, FLITERMENUOPTIONS, COUNT_PAGESIZE, SORTPARAMS } from '@/data/query';
+import { PACKAGE_TYPE_MAPPING, FLITERMENUOPTIONS, COUNT_PAGESIZE, SORTPARAMS } from '@/data/query';
import { useViewStore } from '@/stores/common';
import { useSearchStore } from '@/stores/search';
@@ -41,11 +41,11 @@ const columns = [
const pkgData = ref([]);
-const tabName = ref(TABNAME_OPTIONS[3]);
-const keywordType = ref((route.query.key as string) || '');
+const tabName = ref(PACKAGE_TYPE_MAPPING['epkg']);
+const keywordType = ref('');
const isLoading = ref(false);
-const searchKey = ref((route.query.name as string) || '');
+const searchKey = ref('');
const timeOrder = ref('');
const nameOrder = ref('');
@@ -132,7 +132,7 @@ const queryAllpkg = () => {
// 判断是走es还是sql
const pageSearch = () => {
isSearchError.value = false;
- if (tabName.value === TABNAME_OPTIONS[3]) {
+ if (tabName.value === PACKAGE_TYPE_MAPPING['epkg']) {
isLoading.value = true;
if (searchKey.value === '') {
queryAllpkg();
@@ -189,7 +189,7 @@ const resetTag = () => {
timeOrder.value = '';
currentPage.value = 1;
- if (route.query.os || route.query.arch) {
+ if ((route.query.os || route.query.arch) && !isPageSearch.value) {
router.push({
path: `/${locale.value}/epkg`,
});
@@ -225,10 +225,10 @@ const handleCurrentChange = (val: number) => {
const isPageSearch = ref(false);
onMounted(() => {
+ searchKey.value = route.query?.q ?? '';
+ keywordType.value = route.query?.sort ?? '';
+
isPageSearch.value = route.name === 'search';
- if (isPageSearch.value) {
- pageSearch();
- }
queryFilter();
handleQueryData();
@@ -254,23 +254,23 @@ watch(
// -------------------- 监听 url query 变化 触发搜索 ---------------------
const handleQueryData = () => {
const query = route.query;
- const { name, tab, key, os, arch } = query;
- if (!isUndefined(name) && name) {
- searchKey.value = name?.toString();
+ const { os, arch, q, sort, type } = query;
+ if (!isUndefined(q) && q) {
+ searchKey.value = q?.toString();
currentPage.value = 1;
} else {
searchKey.value = '';
isSearchDocs.value = false;
}
- if (isValidSearchTabName(tab) && tab) {
- tabName.value = tab as string;
+ if (isValidSearchTabName(type) && type) {
+ tabName.value = type as string;
} else {
- tabName.value = TABNAME_OPTIONS[3];
+ tabName.value = PACKAGE_TYPE_MAPPING['epkg'];
}
// 判断key参数
- if (isValidSearchKey(key) && key) {
- keywordType.value = encodeURIComponent(key as string);
+ if (isValidSearchKey(sort) && sort) {
+ keywordType.value = encodeURIComponent(sort as string);
} else {
keywordType.value = FLITERMENUOPTIONS[0].id;
}
@@ -291,6 +291,10 @@ watch(
},
{ deep: true }
);
+
+const changeFilterSearch = (v: string) => {
+ searchKey.value = v;
+};
@@ -324,7 +328,7 @@ watch(
-
+
diff --git a/src/views/field/FieldContent.vue b/src/views/field/FieldContent.vue
index 3da59a0510510d46dc2abd636ba917e1db837901..d0b9346b29088268c636f6a19695df1fdc7745d7 100644
--- a/src/views/field/FieldContent.vue
+++ b/src/views/field/FieldContent.vue
@@ -1,6 +1,7 @@
@@ -326,7 +302,15 @@ watch(
-
+
diff --git a/src/views/field/TheFieldDetail.vue b/src/views/field/TheFieldDetail.vue
index a85450f3045a1f275014dc162af8c4bca5a7f009..d6b7e4272553a2b1dea0337ed314bd91b8cb34ce 100644
--- a/src/views/field/TheFieldDetail.vue
+++ b/src/views/field/TheFieldDetail.vue
@@ -1,18 +1,16 @@
+
+
+
+
+
+
+
+
+
领域{{ data.category }}
+
+ 架构{{ data.arch }}
+
+
+
+
+
+
+
diff --git a/src/views/image/ImageContent.vue b/src/views/image/ImageContent.vue
index d78d3a72494ecc958db7fe785fc4a4d275fe3d3c..49b5126aa0c995d67bf04ba786e82f9ddb07b5d7 100644
--- a/src/views/image/ImageContent.vue
+++ b/src/views/image/ImageContent.vue
@@ -1,19 +1,21 @@
@@ -316,7 +291,7 @@ watch(
-
+
@@ -336,11 +311,16 @@ watch(
{{ t('software.filterSider.clear') }}
-
+
-
+
+
+
+
+
+
diff --git a/src/views/image/TheImage.vue b/src/views/image/TheImage.vue
index 5b62aff1362cc5bfd72be6f3c7c59dcda2a02acd..71d14a1b6e1e8ca4d93428f94348480f9f78087b 100644
--- a/src/views/image/TheImage.vue
+++ b/src/views/image/TheImage.vue
@@ -1,15 +1,21 @@
-
-
+
+
+
+
+
+
diff --git a/src/views/oepkg/OEpkgContent.vue b/src/views/oepkg/OEpkgContent.vue
index da958ea0759ba731522321cb42ff12b082a3ae2d..cbcb50bff78fff3a08f603722e6fe0b4170df19e 100644
--- a/src/views/oepkg/OEpkgContent.vue
+++ b/src/views/oepkg/OEpkgContent.vue
@@ -1,17 +1,17 @@
@@ -331,7 +322,7 @@ watch(
-
+
diff --git a/src/views/oepkg/TheOEpkg.vue b/src/views/oepkg/TheOEpkg.vue
index 24f96b75d0838ee7a823dd89890928b8ac130660..423a9972fe8353cd4ebf93d949ac869114cd1b11 100644
--- a/src/views/oepkg/TheOEpkg.vue
+++ b/src/views/oepkg/TheOEpkg.vue
@@ -1,14 +1,22 @@
-
-
+
+
+
+
+
+
diff --git a/src/views/package/RpmContent.vue b/src/views/package/RpmContent.vue
index 07a3617dcb8c4acb103a75744a0fa0a0b89c0497..b969dea7bcc87b4e0e21a789028e24a09e8be9dd 100644
--- a/src/views/package/RpmContent.vue
+++ b/src/views/package/RpmContent.vue
@@ -1,16 +1,17 @@
@@ -332,7 +318,7 @@ watch(
-
+
diff --git a/src/views/package/TheRpm.vue b/src/views/package/TheRpm.vue
index 0e659d00859b015a4c16e94a7c65e64215bbdf72..e13f2846efcb43cb4a351bf4e9aec3cc20a14372 100644
--- a/src/views/package/TheRpm.vue
+++ b/src/views/package/TheRpm.vue
@@ -1,15 +1,21 @@
-
-
+
+
+
+
+
+
diff --git a/src/views/package/TheRpmDetail.vue b/src/views/package/TheRpmDetail.vue
index b44fd90e298a205aa332cf2f7765059ce9c300a3..41edad246d6fe12a62e23acb37bcf7d7857dccf1 100644
--- a/src/views/package/TheRpmDetail.vue
+++ b/src/views/package/TheRpmDetail.vue
@@ -8,7 +8,7 @@ import type { AppInfoT, MaintainerT, DetailItemT, MoreMessgeT } from '@/@types/a
import { getDetails, getVer } from '@/api/api-domain';
import { useViewStore } from '@/stores/common';
import { useI18n } from 'vue-i18n';
-import { TABNAME_OPTIONS } from '@/data/query';
+import { PACKAGE_TYPE_MAPPING } from '@/data/query';
import DetailBasicInfo from '@/components/detail/DetailBasicInfo.vue';
import AppFeedback from '@/components/AppFeedback.vue';
@@ -23,7 +23,7 @@ import useDetailPageAnalytics from '@/composables/useDetailPageAnalytics';
const { t } = useI18n();
const route = useRoute();
const { mkit } = useMarkdown();
-const tabValue = ref(TABNAME_OPTIONS[1]);
+const tabValue = ref(PACKAGE_TYPE_MAPPING['rpmpkg']);
const basicInfo = ref([]);
const installation = ref('');
const downloadData = ref('');
diff --git a/src/views/search/TheSearch.vue b/src/views/search/TheSearch.vue
index 3d245edff570a84cc485413e64be99785283d015..36dc9c2549a8cd79e7f150b5333893de34d55b91 100644
--- a/src/views/search/TheSearch.vue
+++ b/src/views/search/TheSearch.vue
@@ -1,11 +1,11 @@
@@ -86,20 +107,7 @@ watch(
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
diff --git a/src/views/upstream/UpstreamContent.vue b/src/views/upstream/UpstreamContent.vue
index 059ab304251ac7f5d0fae292498f625ad6b50ea1..3dc92525c3581c84a812dc965770e164f8168028 100644
--- a/src/views/upstream/UpstreamContent.vue
+++ b/src/views/upstream/UpstreamContent.vue
@@ -35,7 +35,7 @@ const tabName = ref('appversion');
const nameOrder = ref('');
const isLoading = ref(false);
-const searchKey = ref((route.query.name as string) || '');
+const searchKey = ref('');
const searchOs = ref('');
const searchType = ref('');
const searchStatus = ref
([]);
@@ -170,6 +170,8 @@ const handleCurrentChange = (val: number) => {
const isPageSearch = ref(false);
onMounted(() => {
+ searchKey.value = route.query?.name ?? route.query?.q ?? '';
+
isPageSearch.value = route.name === 'search';
pageSearch();
@@ -208,7 +210,7 @@ watch(
);
watch(
- () => route.query.name as string,
+ () => (route.query?.name as string) || (route.query?.q as string),
(v: string) => {
if (searchKey.value !== v && v !== undefined) {
searchKey.value = v;
@@ -221,6 +223,14 @@ watch(
pageSearch();
}
);
+
+const changeFilterSearch = (v: string) => {
+ searchKey.value = v;
+};
+
+const clearFilterSearch = () => {
+ searchKey.value = '';
+};
@@ -252,7 +262,7 @@ watch(