diff --git a/packages/pro/search/src/ProSearch.tsx b/packages/pro/search/src/ProSearch.tsx index 4ec2c91ef..b8047d9af 100644 --- a/packages/pro/search/src/ProSearch.tsx +++ b/packages/pro/search/src/ProSearch.tsx @@ -64,11 +64,14 @@ export default defineComponent({ const tempSegmentInputRef = ref() const searchValueContext = useSearchValues(props) - const { searchValues, searchValueEmpty } = searchValueContext + const { searchValues } = searchValueContext const resolvedSearchFieldsContext = useResolvedSearchFields(props, mergedPrefixCls, dateConfig) const { fieldKeyMap } = resolvedSearchFieldsContext const searchStateContext = useSearchStates(props, fieldKeyMap, searchValueContext) - const { initSearchStates, clearSearchState, updateSearchValues, isSegmentVisible } = searchStateContext + const { searchStates, initSearchStates, clearSearchState, updateSearchValues, isSegmentVisible } = + searchStateContext + + const searchStateEmpty = computed(() => !searchStates.value || searchStates.value.length <= 0) const errors = useSearchItemErrors(props, searchValues) const searchItems = useSearchItems(fieldKeyMap, searchStateContext.searchStates, errors) @@ -196,11 +199,11 @@ export default defineComponent({ getKey={item => item.key ?? 'name-select'} maxLabel={focused.value ? Number.MAX_SAFE_INTEGER : props.maxLabel} /> - {searchValueEmpty.value && !isActive.value && ( + {searchStateEmpty.value && !isActive.value && ( {placeholder.value} )} - {!searchValueEmpty.value && clearable.value && !props.disabled && ( + {!searchStateEmpty.value && clearable.value && !props.disabled && (
- searchValueEmpty: ComputedRef setSearchValues: (values: SearchValue[]) => void } @@ -21,11 +19,9 @@ export const tempSearchStateKey = 'temp' export function useSearchValues(props: ProSearchProps): SearchValueContext { const [searchValues, setSearchValues] = useControlledProp(props, 'value') - const searchValueEmpty = computed(() => !searchValues.value || searchValues.value.length <= 0) return { searchValues, - searchValueEmpty, setSearchValues, } }