ในวันที่ 13 ตุลาคม 2021 เราจะปิดบริการที่ให้บริการ "Maps"
โมดูลสำหรับ google.load
ซึ่งหมายความว่าหลังจากวันที่ 13 ตุลาคม 2021 หากคุณพยายามใช้โมดูล "Maps" ใน google.load คุณจะได้รับข้อผิดพลาด (module "maps" is not supported) และแผนที่จะไม่โหลด คุณต้องเปลี่ยนไปใช้ตัวเลือกอื่นเพื่อหลีกเลี่ยงปัญหาที่อาจเกิดขึ้น
สิ่งที่ต้องทำ
ขั้นแรก ให้นำแท็ก <script> ที่โหลดตัวโหลด google.load ออก
แล้วนำการเรียก google.load ออก หากคุณใช้ Google Loader สำหรับสิ่งอื่นๆ คุณสามารถปล่อยแท็ก <script> ของตัวโหลดไว้ได้
จากนั้น ให้ใช้รูปแบบใหม่เพื่อโหลด Maps JavaScript API (เลือกตัวเลือกใดตัวเลือกหนึ่งต่อไปนี้)
ตัวอย่างปัจจุบันที่ใช้ Google Loader
ตัวอย่างต่อไปนี้แสดงวิธีใช้ Google Loader ในปัจจุบันเพื่อโหลด
Maps JavaScript API (มีบล็อก <script> 2 บล็อก)
ก่อน
<script type='text/javascript' src='https://www.google.com/jsapi'></script>
<script type='text/javascript'>
google.load("maps", "3.exp", {
"callback": initMap,
"key": "YOUR_KEY",
"libraries": "places,visualization"
});
function initMap() {
// Google Maps JS API is loaded and available
}
</script>
การโหลดแบบอินไลน์โดยใช้แท็ก <script> (แนะนำ)
เมื่อใช้วิธีนี้ Maps JavaScript API จะโหลดพร้อมกับหน้าเว็บ หากต้องการใช้การโหลดแบบอินไลน์ ให้แทนที่แท็ก
<script> ที่โหลด www.google.com/jsapi ("ก่อน") ด้วยแท็ก
<script> ที่แสดงในตัวอย่างต่อไปนี้ก่อน
<script async src="https://maps.googleapis.com/maps/api/js?libraries=places,visualization&key=YOUR_API_KEY&v=weekly&callback=initMap">
</script>
จากนั้นในโค้ด JavaScript ให้นำการเรียกใช้ฟังก์ชัน google.load ออก เนื่องจากไม่จำเป็นอีกต่อไป ตัวอย่างต่อไปนี้แสดงฟังก์ชัน initMap() ที่ว่างเปล่า ซึ่งจะเรียกใช้เมื่อไลบรารี Maps โหลดเรียบร้อยแล้ว
<script type='text/javascript'>
function initMap() {
// Google Maps JS API is loaded and available
}
</script>
การโหลดแบบไดนามิกจากไฟล์ JavaScript อื่น
การโหลดแบบไดนามิกช่วยให้คุณควบคุมเวลาที่ Maps JavaScript API จะโหลดได้ เช่น คุณสามารถรอให้ Maps JavaScript API โหลดจนกว่าผู้ใช้จะคลิกปุ่มหรือดำเนินการอื่นๆ หากต้องการใช้การโหลดแบบไดนามิก
ให้แทนที่แท็ก <script> ที่โหลด www.google.com/jsapi ("ก่อน")
ด้วยโค้ดเพื่อเพิ่มแท็ก <script> แบบเป็นโปรแกรม ดังที่แสดงในตัวอย่างต่อไปนี้
var script = document.createElement('script');
script.src =
'https://maps.googleapis.com/maps/api/js?libraries=places,visualization&key=YOUR_API_KEY&v=weekly&callback=initMap';
script.async=true;
จากนั้นแนบฟังก์ชัน Callback กับออบเจ็กต์ Window ดังนี้
window.initMap = function() {
// Google Maps JS API is loaded and available
};
สุดท้าย ให้เพิ่มแท็ก <script> ลงในส่วนหัวของหน้าเว็บดังนี้
document.head.appendChild(script);