JSAPI Three API Reference
    正在准备搜索索引...

    地图搜索输入提示服务

    支持以下功能:

    • 实时输入提示和自动完成
    • 支持多种搜索类型(全部、城市等)
    • 仅支持百度地图API
    // 创建自动完成服务
    const autoComplete = new mapvthree.Services.AutoComplete({
    input: 'searchInput', // 输入框ID
    types: ['ALL', 'CITY'],
    maxResults: 10,
    debounceTime: 200,
    onSearchComplete: (results) => {
    console.log('搜索建议:', results);
    },
    onError: (error) => {
    console.error('搜索错误:', error);
    },
    });
    autoComplete.addEventListener('searchComplete', e => console.log('搜索完成'));
    autoComplete.addEventListener('error', e => console.log('搜索错误'));
    // 动态设置搜索类型
    autoComplete.setTypes(['CITY']);

    // 执行搜索
    autoComplete.search('北京');

    // 获取结果
    const results = autoComplete.getResults();

    层级

    • unknown
      • AutoComplete
    索引

    构造函数

    • 创建自动完成服务实例

      参数

      • options: {
            apiSource?: string;
            debounceTime?: number;
            input: string | HTMLElement;
            location?: number[];
            maxResults?: number;
            onError?: Function;
            onNeedData?: Function;
            onSearchComplete?: Function;
            types?: string[];
        } = {}

        配置参数

        • 可选apiSource?: string

          API数据源,目前支持'baidu'

        • 可选debounceTime?: number

          防抖时间(ms)

        • input: string | HTMLElement

          输入框DOM元素或ID

        • 可选location?: number[]

          搜索区域限制 [lng, lat]

        • 可选maxResults?: number

          最大结果数量

        • 可选onError?: Function

          错误回调

        • 可选onNeedData?: Function

          需要数据回调

        • 可选onSearchComplete?: Function

          搜索完成回调

        • 可选types?: string[]

          搜索类型,如['ALL', 'CITY']

      返回 AutoComplete

    方法

    • 销毁组件,释放资源

      返回 void

      autoComplete.dispose();
      
    • 获取当前搜索结果

      返回 null | Object

      搜索结果对象

      const results = autoComplete.getResults();
      if (results) {
      console.log('当前结果:', results);
      }
    • 初始化组件

      返回 AutoComplete

      当前实例,支持链式调用

      autoComplete.initialize();
      
    • 执行搜索

      参数

      • keyword: string

        搜索关键词

      返回 AutoComplete

      当前实例,支持链式调用

      autoComplete.search('北京');
      
    • 设置搜索类型

      参数

      • types: string | string[]

        搜索类型,如['ALL', 'CITY']或'CITY'

      返回 AutoComplete

      当前实例,支持链式调用

      autoComplete.setTypes(['CITY', 'POI']);
      // 或者
      autoComplete.setTypes('CITY');