fix: show clear icon only when search is input
This commit is contained in:
parent
c726b9abb4
commit
2ca3355366
2 changed files with 31 additions and 6 deletions
|
|
@ -96,7 +96,7 @@ function clearAdvSearchData() {
|
||||||
<div class="row items-center" style="width: 45px; height: 45px">
|
<div class="row items-center" style="width: 45px; height: 45px">
|
||||||
<q-btn
|
<q-btn
|
||||||
dense
|
dense
|
||||||
color="teal"
|
color="teal-5"
|
||||||
icon="mdi-plus"
|
icon="mdi-plus"
|
||||||
v-if="index === advSearchDataRow.length - 1"
|
v-if="index === advSearchDataRow.length - 1"
|
||||||
@click="addAdvSearchData"
|
@click="addAdvSearchData"
|
||||||
|
|
@ -135,6 +135,7 @@ function clearAdvSearchData() {
|
||||||
@keydown.enter.prevent="searchSubmit()"
|
@keydown.enter.prevent="searchSubmit()"
|
||||||
><template v-slot:append>
|
><template v-slot:append>
|
||||||
<q-icon
|
<q-icon
|
||||||
|
v-if="item.value"
|
||||||
name="close"
|
name="close"
|
||||||
@click="() => (item.value = '')"
|
@click="() => (item.value = '')"
|
||||||
class="cursor-pointer"
|
class="cursor-pointer"
|
||||||
|
|
@ -172,24 +173,34 @@ function clearAdvSearchData() {
|
||||||
outlined
|
outlined
|
||||||
dense
|
dense
|
||||||
v-model="advSearchDataField.keyword"
|
v-model="advSearchDataField.keyword"
|
||||||
placeholder="คำสำคัญ"
|
|
||||||
use-input
|
use-input
|
||||||
use-chips
|
use-chips
|
||||||
multiple
|
multiple
|
||||||
hide-dropdown-icon
|
hide-dropdown-icon
|
||||||
input-debounce="0"
|
input-debounce="0"
|
||||||
new-value-mode="add"
|
new-value-mode="add-unique"
|
||||||
/>
|
><template v-slot:prepend
|
||||||
|
><span class="text-subtitle2">คำสำคัญ:</span></template
|
||||||
|
></q-select
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12 col-md-grow">
|
<div class="col-12 col-md-grow">
|
||||||
<q-input
|
<q-input
|
||||||
id="advSearchDes"
|
id="advSearchDes"
|
||||||
dense
|
dense
|
||||||
outlined
|
outlined
|
||||||
placeholder="รายละเอียด"
|
|
||||||
@keydown.enter.prevent="searchSubmit()"
|
@keydown.enter.prevent="searchSubmit()"
|
||||||
v-model="advSearchDataField.description"
|
v-model="advSearchDataField.description"
|
||||||
/>
|
><template v-slot:prepend
|
||||||
|
><span class="text-subtitle2">รายละเอียด:</span></template
|
||||||
|
><template v-slot:append>
|
||||||
|
<q-icon
|
||||||
|
v-if="advSearchDataField.description"
|
||||||
|
name="close"
|
||||||
|
@click="() => (advSearchDataField.description = '')"
|
||||||
|
class="cursor-pointer"
|
||||||
|
/> </template
|
||||||
|
></q-input>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -8,8 +8,10 @@ import { useSearchDataStore } from '@/stores/searched-data'
|
||||||
import { useLoader } from '@/stores/loader'
|
import { useLoader } from '@/stores/loader'
|
||||||
|
|
||||||
import AdvancedSearch from '@/modules/01_user/components/AdvancedSearch.vue'
|
import AdvancedSearch from '@/modules/01_user/components/AdvancedSearch.vue'
|
||||||
|
import { useFileInfoStore } from '@/stores/file-info-data'
|
||||||
|
|
||||||
const loaderStore = useLoader()
|
const loaderStore = useLoader()
|
||||||
|
const { isFilePreview } = storeToRefs(useFileInfoStore())
|
||||||
const {
|
const {
|
||||||
isSearch,
|
isSearch,
|
||||||
isAdvSearchCall,
|
isAdvSearchCall,
|
||||||
|
|
@ -37,6 +39,7 @@ const props = defineProps<{
|
||||||
}>()
|
}>()
|
||||||
|
|
||||||
async function searchSubmit() {
|
async function searchSubmit() {
|
||||||
|
isFilePreview.value = false
|
||||||
if (searchData.value.value.trim() !== '') {
|
if (searchData.value.value.trim() !== '') {
|
||||||
submitSearchData.value = { AND: [], OR: [] }
|
submitSearchData.value = { AND: [], OR: [] }
|
||||||
if (props.mode === 'admin') {
|
if (props.mode === 'admin') {
|
||||||
|
|
@ -46,6 +49,14 @@ async function searchSubmit() {
|
||||||
value: searchData.value.value,
|
value: searchData.value.value,
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
submitSearchData.value.OR.push({
|
||||||
|
field: 'fileName',
|
||||||
|
value: searchData.value.value,
|
||||||
|
})
|
||||||
|
submitSearchData.value.OR.push({
|
||||||
|
field: 'fileType',
|
||||||
|
value: searchData.value.value,
|
||||||
|
})
|
||||||
} else {
|
} else {
|
||||||
submitSearchData.value.OR.push({
|
submitSearchData.value.OR.push({
|
||||||
field: searchData.value.field,
|
field: searchData.value.field,
|
||||||
|
|
@ -85,6 +96,8 @@ async function searchSubmit() {
|
||||||
`${import.meta.env.VITE_API_ENDPOINT}/search`,
|
`${import.meta.env.VITE_API_ENDPOINT}/search`,
|
||||||
submitSearchData.value,
|
submitSearchData.value,
|
||||||
)
|
)
|
||||||
|
console.log(submitSearchData)
|
||||||
|
|
||||||
getFoundFile(res.data)
|
getFoundFile(res.data)
|
||||||
isSearch.value = true
|
isSearch.value = true
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
|
@ -153,6 +166,7 @@ watch(
|
||||||
>
|
>
|
||||||
<template v-slot:append>
|
<template v-slot:append>
|
||||||
<q-icon
|
<q-icon
|
||||||
|
v-if="searchData.value"
|
||||||
name="close"
|
name="close"
|
||||||
@click="() => ((searchData.value = ''), (isSearch = false))"
|
@click="() => ((searchData.value = ''), (isSearch = false))"
|
||||||
class="cursor-pointer"
|
class="cursor-pointer"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue