API Карт Google требует от меня, чтобы загрузить скрипт с асинхронным DEFER:Как я могу загрузить API и API карт Google, когда есть catch-22?
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=[MY_KEY]&callback=initMap">
</script>
Между тем, Google Places API требует от меня, чтобы загрузить сценарий обычно:
<script src="https://maps.googleapis.com/maps/api/js?key=[MY_KEY]&v=3.exp&sensor=false&libraries=places">
</script>
Если оба находятся на странице, Google Места не работают.
Если я удалю API карт и ничего больше, Google Адреса будет работать. Но, конечно, карта не работает.
Как будто это еще не достаточно хлопотно, Google жалуется на консоль, что я загружаю их API дважды. Справедливо, но если я совмещаю запрос:.?
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=[MY_KEY]&callback=initMap&v=3.exp&sensor=false&libraries=places">
</script>
... то ни нагрузки (с или без «асинхронного DEFER»
Любых решений Кто-нибудь, прежде чем запустить в это я не могу? найти любые ответы на Google или Stackoverflow для того, что, по-видимому, является обычным прецедентом (наличие мест расположения автозагрузчиков Places в форме, а затем карта на той же странице показывает эти местоположения).
Комбинированная нагрузка должна работать (с 'async defer' и обратным вызовом или без' async defer' ** и ** без параметра обратного вызова, но с другим механизмом для запуска функции initMap. Пожалуйста, предоставьте [mcve], демонстрирующий проблему. – geocodezip
На самом деле, ответ заключается в том, что если вы используете initMap И комбинированный запрос (оба из которых являются обязательными, так или иначе), то вам нужно включить все функции в initMap. http://stackoverflow.com/questions/40403251/getting-uncaught-referenceerror-google-is-not-defined-error-using-google-maps – MattWithoos