diff --git a/components/i/search/Header.vue b/components/i/search/Header.vue
index 513ffef21fe8eb823463d4a9d6100510d5693b3d..509122a0719d0e7bd38b18318e855e8f79fe6a2a 100644
--- a/components/i/search/Header.vue
+++ b/components/i/search/Header.vue
@@ -14,12 +14,15 @@
/>
-
+
@@ -91,6 +94,10 @@ const props = defineProps({
default: false
}
})
+const state = reactive({
+ id: route.params.id
+})
+const Layout = inject('Layout')
const emits = defineEmits(['update-query'])
const isEditTitle = ref(false)
const titleRef = ref(null)
@@ -112,7 +119,7 @@ function handleBlurTitle () {
emits('update-query', editTitle.value)
}
async function handleUpdateOpenState (state) {
- const { data } = await useRequest(`/v1/chat/${route.params.id}/public/${state}`, { method: 'post' })
+ const { data } = await useRequest(`/v1/chat/${state.id}/public/${state}`, { method: 'post' })
if (data.value) isOpen.value = state
}
function handleCopyLink (url) {
@@ -136,10 +143,10 @@ async function handleSetOpenState() {
}
}
function handleOpenSelect () {
- $openLibrarySelect(route.params.id)
+ $openLibrarySelect(state.id, $selectCollectionId.value)
}
async function initData () {
- const { data, error } = await findRecordCollection(route.params.id)
+ const { data, error } = await findRecordCollection(state.id)
if (!error.value) {
const ids = data.value.data.map(item => item.collection_id)
$setSelectCollectionId(ids)
@@ -154,4 +161,14 @@ defineExpose({
handleUpdateOpenState,
handleCopyLink
})
+function handleRemoveCollect (data) {
+ const { c_id } = data.value
+ if (c_id === state.id) {
+ $setSelectCollectionId([])
+ Layout.handleClearRemoveCollectData()
+ }
+}
+watch(()=> Layout.removeCollectData, (data) => {
+ if (data.value !== null) handleRemoveCollect(data)
+}, { deep: true })
\ No newline at end of file