我的目標是根據Fusion Table的查詢結果創建google.maps.FusionTablesLayer。我有一個公開的Google Fusion Table已被「啓用下載」。我可以使用Google Fusion Tables REST API成功查詢表格(我會提供一個指向API的鏈接,但沒有足夠的信譽)。以下查詢適用於瀏覽器:使用FusionTablesLayerOptions的查詢參數不起作用的Google Fusion Table查詢
我真正想要的是能夠使用查詢結果創建Google Fusion Tables圖層對象。看起來最簡單的方法是在初始化Google Fusion Tables圖層對象期間將上述查詢作爲參數提供(如JavaScript FusionTablesLayer API中所示)。然而,FusionTablesLayer會失敗時初始化過程中查詢如下露面:
northbound_hikers_start_layer = new google.maps.FusionTablesLayer({
query: {
select: 'start_lat',
from: '1JUAkUL5H7IhU4QrmLuVQ65Tg2SNyI5Xqm3A7Nk1g',
where: "dir = 'Northbound'"
},
heatmap: {
enabled: true
},
suppressInfoWindows: false
});
編輯:當我刪除'where'子句(這導致我相信查詢是問題)時知道地圖正確顯示可能會有幫助。我忘了提,我做分配層的地圖如下:
$("button").click(function() {
console.log(this.id + " button was pressed.");
if (this.id == "toggle-at-centerline-button") {
//Toggle AT Centerline Layer
if (!toggle_at_centerline_button_pressed) {
centerline_layer.setMap(map);
toggle_at_centerline_button_pressed = true;
} else {
centerline_layer.setMap(null);
toggle_at_centerline_button_pressed = false;
}
} else if (this.id == "toggle-at-shelter-button") {
//Toggle AT Shelters Layer
if (!toggle_at_shelter_button_pressed) {
shelterLayer.setMap(map);
toggle_at_shelter_button_pressed = true;
} else {
shelterLayer.setMap(null);
toggle_at_shelter_button_pressed = false;
} etc...
});
對不起,我忘了提,我有地圖屬性當按下顯示按鈕在稍後設置。我上面的代碼在我刪除'where'子句時正常工作。它只有在存在沒有任何東西出現的'where'子句的情況下。我將編輯原始問題以反映這些信息。 – campellcl
感謝您的「概念證明小提琴」,我發現了錯誤。查詢正在工作(正如你的小提琴所顯示的那樣),我正在用'where:'dir ='Southbound'「''測試顯示器。我的表格太大,所以數據不會作爲查詢可訪問的100,000條記錄的一部分返回。結果「北行」查詢成功,「南行」查詢看起來失敗。我已將問題標記爲已回答,因爲您的小提琴顯示了正在工作的查詢的示例,導致我意識到自己的錯誤。我希望別人覺得這很有用。感謝您的工作示例! – campellcl
這就是爲什麼在問題中提供[mcve]很重要。 – geocodezip