【发布时间】:2023-03-12 02:44:02
【问题描述】:
所以我正在尝试将https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform 的搜索栏添加到我的 Meteor 应用程序中。 首先,我需要加载 Google Places 库。然而,该链接也尝试直接写入 DOM 以获取另一个链接。 Meteor 不允许,所以我决定像这样加载两个 js 文件。
Template.listingSubmit.rendered = function(){
if (!this.rendered){
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "https://maps.googleapis.com/maps/api/js?v=3.exp&libraries=places";
document.body.appendChild(script);
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "https://maps.gstatic.com/cat_js/maps-api-v3/api/js/17/13/%7Bmain,places%7D.js";
document.body.appendChild(script);
this.rendered = true;
}
};
这行得通吗? 我的下一个问题是如何初始化自动完成文本字段? 对应模板中的html很简单。
<div id="locationField">
<input id="autocomplete" placeholder="Enter your address" type="text">
</div>
现在我尝试添加
var autocomplete = new google.maps.places.Autocomplete(
(document.getElementById('autocomplete')),{types: ['geocode'] }
);
到 Template.listingSubmit.rendered 但没有任何反应。我得到一个谷歌未定义的错误。出了什么问题?
【问题讨论】:
标签: google-maps autocomplete meteor