Search State

SearchState 是基于 Zustand 的搜索状态管理钩子,为 Search 组件提供完整的状态管理能力。它支持多种搜索模式(标准模式、嵌入式模式),管理搜索关键词、搜索结果、加载状态、错误处理等功能。如果自定义组件能力不能支持您的业务,可以使用 SearchState 实现您的需求。

数据

属性名
类型
说明
keyword
string
当前搜索关键词
results
Map<SearchType, SearchResult<SearchType>>
搜索结果集合
isLoading
boolean
是否正在搜索
error
Error | null
搜索错误信息
searchAdvancedParams
Map<ISearchType, SearchParamsMap[SearchType]>
高级搜索参数
selectedSearchType
SearchType | 'all'
当前选中的搜索类型

操作方法

方法名
类型
说明
setKeyword
(k: string) => void
设置搜索关键词
loadMore
(type?: SearchType) => Promise<void>
加载更多搜索结果
setSelectedType
(type: SearchType | 'all') => void
设置搜索类型
setSearchMessageAdvancedParams
(params: SearchCloudMessagesParams) => void
设置消息搜索高级参数
setSearchUserAdvancedParams
(params: SearchCloudUsersParams) => void
设置用户搜索高级参数
setSearchGroupAdvancedParams
(params: SearchCloudGroupsParams) => void
设置群组搜索高级参数

使用示例

import { useSearchState, VariantType } from '@tencentcloud/chat-uikit-react';
const {
keyword,
results,
isLoading,
error,
setKeyword,
setSelectedType,
loadMore
} = useSearchState(VariantType.STANDARD);