AutocompleteSuggestion 類別
google.maps.places.AutocompleteSuggestion
class
library "places"
自動完成建議結果。
const {AutocompleteSuggestion} = await google.maps.importLibrary("places");
靜態方法 | |
|---|---|
fetchAutocompleteSuggestions |
fetchAutocompleteSuggestions(autocompleteRequest)參數:
傳回值:
Promise<{suggestions:Array<AutocompleteSuggestion>}>擷取 AutocompleteSuggestions 清單。 如果要求中提供 AutocompleteRequest.sessionToken,則在產生的 PlacePrediction 上,針對 PlacePrediction.toPlace 傳回的每個 Place 首次呼叫 Place.fetchFields 時,系統會自動加入該工作階段符記。 |
屬性 | |
|---|---|
placePrediction
readonly |
類型:
PlacePrediction optional包含傳回結果的人類可讀名稱。如果是商家結果,通常會顯示商家名稱和地址。 如果在用來擷取這個 AutocompleteSuggestion 的 AutocompleteRequest 中提供 AutocompleteRequest.sessionToken,則在對呼叫 PlacePrediction.toPlace 傳回的 Place 首次呼叫 Place.fetchFields 時,系統會自動加入相同的權杖。 |
AutocompleteRequest 介面
google.maps.places.AutocompleteRequest
介面
AutocompleteSuggestion.fetchAutocompleteSuggestions 的要求介面。
屬性 | |
|---|---|
input |
類型:
string要搜尋的文字字串。 |
futureOpeningBusinessesIncluded
選填 |
類型:
boolean optional納入尚未營業但預計未來會營業的商家地點預測。 |
includedPrimaryTypes
選填 |
類型:
Array<string> optional |
includedRegionCodes
選填 |
類型:
Array<string> optional僅納入指定區域的結果,最多可指定 15 個 CLDR 雙字元區域代碼。空白集合不會限制結果。如果同時設定 locationRestriction 和 includedRegionCodes,結果會位於交集區域。 |
inputOffset
選填 |
類型:
number optionalinput 的 Unicode 字元偏移量 (從零開始),表示游標在 input 中的位置。游標位置可能會影響傳回的預測結果。如未指定,則預設為 input 的長度。 |
language
選填 |
類型:
string optional傳回結果時使用的語言。預設為瀏覽器的語言偏好設定。如果 input 使用的語言與 language 不同,或傳回的地點沒有從當地語言翻譯成 language,結果可能會混合多種語言。 |
locationBias
選填 |
類型:
LocationBias optional針對指定位置調整結果。 locationBias 或 locationRestriction 最多只能設定一個。如果兩者皆未設定,系統會根據 IP 位址調整結果,也就是將 IP 位址對應至不精確的位置,並做為調整信號。 |
locationRestriction
選填 |
類型:
LocationRestriction optional將結果限制在指定位置。 locationBias 或 locationRestriction 最多只能設定一個。如果兩者皆未設定,系統會根據 IP 位址調整結果,也就是將 IP 位址對應至不精確的位置,並做為調整信號。 |
origin
選填 |
類型:
LatLng|LatLngLiteral optional計算目的地測地線距離的起點 (以 PlacePrediction.distanceMeters 傳回)。如果省略這個值,系統就不會傳回測地線距離。 |
pureServiceAreaBusinessesIncluded
選填 |
類型:
boolean optional如果欄位設為 true,則納入完全無店面區域商家。完全無店面區域商家會直接配送或到場服務,但不在公司地址為顧客提供服務。舉例來說,清潔或水電服務等商家可能沒有實體地址,或在 Google 地圖上沒有地點。 |
region
選填 |
類型:
string optional區碼,指定為 CLDR 雙字元區碼。這會影響地址格式、結果排名,以及傳回的結果。這不會將結果限制在指定區域。 |
sessionToken
選填 |
類型:
AutocompleteSessionToken optional用於識別 Autocomplete 工作階段的權杖,以便計費。透過 AutocompleteSessionToken 產生新的工作階段符記。工作階段是從使用者輸入查詢時開始,到使用者選取地點並呼叫 Place.fetchFields 時結束。在每個工作階段中,使用者可以輸入多筆查詢,最終發出一個 fetchFields 呼叫。在工作階段中,每項要求使用的憑證都必須屬於同一個 Google Cloud 控制台專案。工作階段結束後,符記就會失效。您的應用程式必須為每個工作階段產生新的符記。如果省略 sessionToken 參數或重複使用工作階段符記,系統會視為未提供工作階段符記,並針對工作階段收費 (每個要求分別收費)。在 AutocompleteSuggestion.fetchAutocompleteSuggestions 要求中提供工作階段符記時,系統會自動將相同符記納入對 Place 呼叫 fetchFields 的第一個呼叫,而 是透過對其中一個結果 AutocompleteSuggestion 呼叫 PlacePrediction.toPlace 傳回。建議您遵循下列規範:
|
AutocompleteSessionToken 類別
google.maps.places.AutocompleteSessionToken
class
library "places"
代表用於追蹤自動完成工作階段的工作階段符記。
const {AutocompleteSessionToken} = await google.maps.importLibrary("places");
建構函式 | |
|---|---|
AutocompleteSessionToken |
AutocompleteSessionToken()參數:無
用來建立 AutocompleteSessionToken 的新例項。 |
PlacePrediction 類別
google.maps.places.PlacePrediction
class
library "places"
Place Autocomplete 自動預測結果。
const {PlacePrediction} = await google.maps.importLibrary("places");
屬性 | |
|---|---|
distanceMeters
readonly |
類型:
number optional如果指定 origin,則為測地線長度 (以公尺為單位,從 origin 算起)。 |
mainText
readonly |
類型:
FormattableText optional代表地點名稱。 |
placeId
readonly |
類型:
string建議地點的專屬 ID。這個 ID 可用於其他接受地點 ID 的 API。 |
secondaryText
readonly |
類型:
FormattableText optional代表其他區分特徵 (例如城市或區域),可進一步識別地點。 |
text
readonly |
類型:
FormattableText包含傳回結果的人類可讀名稱。如果是商家結果,通常會顯示商家名稱和地址。 建議想顯示單一 UI 元素的開發人員使用 text。如果開發人員想顯示兩個獨立但相關的 UI 元素,建議改用 PlacePrediction.mainText 和 PlacePrediction.secondaryText。 |
types
readonly |
類型:
Array<string>適用於這個地點的類型清單,取自 https://developers.google.com/maps/documentation/places/web-service/place-types 的表 A 或表 B。 |
方法 | |
|---|---|
|
fetchAddressValidation(request)參數:
傳回值:
Promise<AddressValidation>傳送與這個自動完成工作階段相關聯的地址驗證要求 (在內部使用自動完成工作階段符記填入要求)。系統不會自動納入 PlacePrediction 的地點資訊,這個方法只是為了方便管理自動完成工作階段。 |
toPlace |
toPlace()參數:無
傳回值:
Place傳回這個 PlacePrediction 的 Place 表示法。您必須接著呼叫 Place.fetchFields,才能取得完整的地點詳細資料。如果用於擷取這個 PlacePrediction 的 AutocompleteRequest 提供了 AutocompleteRequest.sessionToken,則呼叫 fetchFields 時會自動包含相同的權杖。或者,使用 PlaceAutocompleteElement 時,對 PlacePrediction.toPlace 傳回的 Place 首次呼叫 Place.fetchFields,會自動包含工作階段符記。 |
StringRange 類別
google.maps.places.StringRange
class
library "places"
識別指定文字中的子字串。
const {StringRange} = await google.maps.importLibrary("places");
屬性 | |
|---|---|
endOffset
readonly |
類型:
number子字串最後一個 Unicode 字元的偏移量 (不含該值),以零為基準。 |
startOffset
readonly |
類型:
number子字串第一個 Unicode 字元的偏移值 (從零開始,含)。 |
FormattableText 類別
google.maps.places.FormattableText
class
library "places"
代表地點預測結果的文字。文字可直接使用或設定格式。
const {FormattableText} = await google.maps.importLibrary("places");
屬性 | |
|---|---|
matches
readonly |
類型:
Array<StringRange>字串範圍清單,用於識別輸入要求在 FormattableText.text 中的相符位置。範圍可用於設定 text 特定部分的格式。如果比對是依據字串比對以外的條件 (例如拼字校正或音譯) 判定,子字串可能不會與 AutocompleteRequest.input 完全相符。這些值是 FormattableText.text 的 Unicode 字元偏移量。範圍會依偏移值遞增排序。 |
text
readonly |
類型:
string可直接使用或以 FormattableText.matches 設定格式的文字。 |