Autocomplete Data (new)

AutocompleteRequest 介面

google.maps.places.AutocompleteRequest 介面

AutocompleteSuggestion.fetchAutocompleteSuggestions 的請求介面。

input
類型:  string
要搜尋的文字字串。
includedPrimaryTypes optional
類型:  Array<string> optional
包含的主要地點類型 (例如「餐廳」或「加油站」)。

只有在主要類型包含在這個清單中時,系統才會傳回地點。最多可指定 5 個值。如果未指定類型,系統會傳回所有地點類型。
includedRegionCodes optional
類型:  Array<string> optional
只納入指定區域的結果,最多可指定 15 個 CLDR 兩位元區域代碼。空集不會限制結果。如果同時設定 locationRestrictionincludedRegionCodes,結果會位於交集區域。
inputOffset optional
類型:  number optional
以零為基底的 input Unicode 字元位移值,表示 input 中的游標位置。游標位置可能會影響傳回的預測結果。如未指定,則預設為 input 的長度。
language optional
類型:  string optional
傳回結果時使用的語言。預設會採用瀏覽器的語言偏好設定。如果 input 使用的語言與 language 不同,或是所傳回的地點沒有從當地語言翻譯成 language 的譯文,結果可能會混用多種語言。
locationBias optional
類型:  LocationBias optional
針對指定位置調整結果。

最多只能設定 locationBiaslocationRestriction 其中一個。如果未設定這兩者,結果會受到 IP 位址偏差影響,也就是說 IP 位址會對應至不精確的位置,並用作偏差信號。
locationRestriction optional
類型:  LocationRestriction optional
將結果限制在指定地點。

最多只能設定 locationBiaslocationRestriction 其中一個。如果未設定這兩者,結果會受到 IP 位址偏差影響,也就是說 IP 位址會對應至不精確的位置,並用作偏差信號。
origin optional
類型:  LatLng|LatLngLiteral optional
計算到目的地的大地測距所用的原點 (以 PlacePrediction.distanceMeters 的形式傳回)。如果省略這個值,系統就不會傳回大地測距。
region optional
類型:  string optional
區碼,指定為 CLDR 雙字元區碼。這會影響地址格式、結果排名,並可能影響傳回的結果。但不會限制結果只顯示指定區域。
sessionToken optional
類型:  AutocompleteSessionToken optional
用於計費的 Autocomplete 工作階段識別碼。透過 AutocompleteSessionToken 產生新的會話符記。

工作階段是從使用者輸入查詢時開始,到使用者選取地點並呼叫 Place.fetchFields 時結束。每個工作階段可包含多個查詢,並且後面接著一個 fetchFields 呼叫。在單一工作階段中,每項要求使用的憑證都必須屬於同一個 Google Cloud 控制台專案。工作階段結束後,符記就會失效;您的應用程式必須為每個工作階段產生新的符記。如果省略 sessionToken 參數或重複使用工作階段符記,系統會視為未提供工作階段符記,並針對工作階段收費 (每個要求分別收費)。

建議您遵循下列準則:
  • 在所有 Place Autocomplete 呼叫中使用工作階段符記。
  • 為每個工作階段產生新的符記。
  • 請務必針對每個新的工作階段傳遞不重複的工作階段符記。如果多個工作階段使用同一個符記,則每個要求會分別計費。

AutocompleteSessionToken 類別

google.maps.places.AutocompleteSessionToken class

代表用於追蹤自動完成工作階段的工作階段符記。

請呼叫 const {AutocompleteSessionToken} = await google.maps.importLibrary("places") 存取。請參閱「Maps JavaScript API 中的程式庫」。

AutocompleteSessionToken
AutocompleteSessionToken()
參數:
用來建立 AutocompleteSessionToken 的新例項。

AutocompleteSuggestion 類別

google.maps.places.AutocompleteSuggestion class

自動完成建議結果。

請呼叫 const {AutocompleteSuggestion} = await google.maps.importLibrary("places") 存取。請參閱「Maps JavaScript API 中的程式庫」。

fetchAutocompleteSuggestions
fetchAutocompleteSuggestions(autocompleteRequest)
參數: 
傳回值:  Promise<{suggestions:Array<AutocompleteSuggestion>}>
擷取 AutocompleteSuggestion 清單。
placePrediction
類型:  PlacePrediction optional
包含傳回結果的使用者可解讀名稱。對於商家結果,通常是商家名稱和地址。

PlacePrediction 類別

google.maps.places.PlacePrediction class

Place Autocomplete 預測結果。

請呼叫 const {PlacePrediction} = await google.maps.importLibrary("places") 存取。請參閱「Maps JavaScript API 中的程式庫」。

distanceMeters
類型:  number optional
如果指定 origin,則測地線的長度以公尺為單位。origin
mainText
類型:  FormattableText optional
代表地點的名稱。
placeId
類型:  string
建議地點的專屬 ID。這個 ID 可用於接受 Place ID 的其他 API。
secondaryText
類型:  FormattableText optional
代表其他可用於區分地點的功能 (例如城市或區域),以進一步識別地點。
text
類型:  FormattableText
包含傳回結果的使用者可解讀名稱。對於商家結果,通常是商家名稱和地址。

text 適用於希望顯示單一 UI 元素的開發人員。如果開發人員想顯示兩個相關但獨立的 UI 元素,建議改用 PlacePrediction.mainTextPlacePrediction.secondaryText
types
類型:  Array<string>
請參閱 https://developers.google.com/maps/documentation/places/web-service/place-types 中的表 A 或表 B,列出適用於這個地點的類型。
toPlace
toPlace()
參數:
傳回值:  Place
傳回此 PlacePrediction 的 Place 表示法。您必須後續呼叫 Place.fetchFields,才能取得完整的地點詳細資料。

StringRange 類別

google.maps.places.StringRange class

找出指定文字中的子字串。

請呼叫 const {StringRange} = await google.maps.importLibrary("places") 存取。請參閱「Maps JavaScript API 中的程式庫」。

endOffset
類型:  number
子字串最後一個 Unicode 字元的偏移量 (不含),以零為基底。
startOffset
類型:  number
子字串中第一個 Unicode 字元的位移值 (從零開始,包含起始值)。

FormattableText 類別

google.maps.places.FormattableText class

代表地點預測結果的文字。您可以直接使用文字,也可以加上格式。

請呼叫 const {FormattableText} = await google.maps.importLibrary("places") 存取。請參閱「Maps JavaScript API 中的程式庫」。

matches
類型:  Array<StringRange>
字串範圍清單,用於指出輸入要求在 FormattableText.text 中相符的位置。範圍可用於格式化 text 的特定部分。如果比對結果是根據字串比對以外的條件 (例如拼字校正或轉寫) 決定,則子字串可能不會與 AutocompleteRequest.input 完全比對。這些值是 FormattableText.text 的 Unicode 字元偏移量。範圍保證以遞增的偏移值排序。
text
類型:  string
可直接使用的文字,或使用 FormattableText.matches 格式設定的文字。