Javascript Google API出现奇怪错误:initializeAutocomplete不是函数

Javascript Google API出现奇怪错误:initializeAutocomplete不是函数,javascript,google-maps,google-chrome,google-maps-api-3,Javascript,Google Maps,Google Chrome,Google Maps Api 3,由于我甚至不知道如何描述错误,所以附上了一个屏幕截图 它声称,initializeAutocomplete不是一个函数,但该函数显然存在于我的JS文件中,这里就是 let autocomplete function initializeAutocomplete() { autocomplete = new google.maps.places.Autocomplete(addressInput, { types: ['geocode'] }) autocomplete.a

由于我甚至不知道如何描述错误,所以附上了一个屏幕截图

它声称,
initializeAutocomplete
不是一个函数,但该函数显然存在于我的JS文件中,这里就是

let autocomplete

function initializeAutocomplete() {
  autocomplete = new google.maps.places.Autocomplete(addressInput, {
    types: ['geocode']
  })
  autocomplete.addListener('place_changed', parseAddress)
}
这是我的HTML文件中对脚本的引用

<script src="https://maps.googleapis.com/maps/api/js?
v=3
&key=[confidential]
&libraries=places
&callback=initializeAutocomplete" async defer></script>


我不知所措,尤其是这件事不知从何而来。有人知道这里发生了什么吗?

您使用的是
async
defer
。您的脚本可能是在调用
initializeAutocomplete
函数之后加载的。

Wow。现在它突然又开始工作了,我甚至都没碰它。如果有人有任何想法,我仍然有兴趣知道到底发生了什么。没关系,现在又开始窃听了。。。WTFit工作正常。那就没有了。它起作用了。那就没有了。它起作用了。那么…如果你把它隔离在一个单独的地方,你能不能不断地复制它?你能不能少一点,显示你所有的代码?这正是发生的事情。我在这段时间里已经弄明白了