client-search
Version:
客户端搜索
38 lines (37 loc) • 2.06 kB
TypeScript
/// <reference path="src/index.d.ts" />
import Controller from './Controller';
export default class ClientSearch extends Controller implements ClientSearchBase {
protected option: IOptions;
params: HouseListParams;
currentGeoLocation?: IGeolocationParams;
houseList: IHouseDetail[];
mapHouseList: IHouseDetail[];
recommendHouseList: IHouseDetail[];
geoLocationCityName: string;
mapCoord: IGeolocationParams | null;
hasNext: boolean;
inputKeywork: string;
readonly houseListIsEmpty: number;
constructor(option: IOptions);
setCurrentGeoLocation(geo: ILocationBaseParams): Promise<void>;
onInputKeyword(keyword: string): Promise<[Array<IAmapTips | null>, IHouseDetail[], IApiListResponse<IHouseDetail>]>;
searchByGeolocation(params: IGeolocationParams): Promise<IHouseDetail[]>;
searchByKeyword(keyword: string): Promise<IHouseDetail[]>;
searchByDate(date: IDateParams): Promise<IHouseDetail[]>;
searchByFilter(filterCondition: IFilterParams, byMap?: boolean): Promise<IHouseDetail[]>;
searchByLocation(locationParams: ILocationParams, byMap?: boolean): Promise<IHouseDetail[]>;
searchBySort(sortParams: ISortParams): Promise<IHouseDetail[]>;
searchByCity(cityParams: ICityParams): Promise<IHouseDetail[]>;
searchByAreaCode(areaCode: string, byMap?: boolean): Promise<IHouseDetail[]>;
immediatelySearchByAreaCode(areaCode: string, byMap?: boolean): Promise<IHouseDetail[]>;
searchMap(): Promise<[IGeolocationParams | null, IHouseDetail[]]>;
searchMapWithCoord(coord: ILocationBaseParams): Promise<[ILocationBaseParams | null, IHouseDetail[]]>;
searchByTagIds(bizTagIds: string, params: HouseListParams): Promise<IHouseDetail[]>;
loadDataByPageNum(pageNum: number): Promise<IHouseDetail[]>;
loadNextPageData(): Promise<IHouseDetail[]> | undefined;
loadFirstPageData(): Promise<IHouseDetail[]>;
private searchRecommendHouses;
private getCoordCityName;
private clearParams;
private clearFilter;
}