首页 文章

地址在App Maker上搜索Google Map小部件

提问于
浏览
1

我看到App Maker的Google Map小部件文档说我可以将datasource绑定到它,以便用户可以输入地址来更新 Map . 是否可以将其绑定到App Maker中的Places search box之类的内容?

如果我不需要创建自己的数据源来启用地址搜索,那就太棒了 .

1 回答

  • 1

    您可以使用Suggest BoxCalculated DatasourceGeocoder Apps Script service构建地址搜索

    /**
     * Creates address suggestion record.
     * @param {Object} geocode Geocode object received from Maps Geocoder.
     * @return {AddressSuggestion} Created suggestion record.
     */
    function createAddressSuggestion_(geocode) {
      var record = app.models.AddressSuggestion.newRecord();
      record.Address = geocode.formatted_address;
      return record;
    }
    
    
    /**
     * Gets address suggestions Maps Geocoder.
     * @param {string} term Start of address string to search for.
     * @return {Array<AddressSuggestion>} Array of suggestion records.
     */
    function getAddressSuggestions_(term) {
      // TODO: Uncomment to set clientId and Google Maps API Key
      // Maps.setAuthentication('your_client_id', 'your_signing_key');
    
      var response = Maps.newGeocoder().geocode(term);
      var geocodes = response.results;
    
      return geocodes.map(createAddressSuggestion_);
    }
    

    Datasource

    还有一个重要的事情:您需要说出Suggest Box来处理您的数据源作为整个记录,否则它将过滤掉与您的 _startsWith 术语不完全匹配的所有结果:
    Record as value

相关问题