Thông báo bảo mật: Chúng tôi đã nhận thấy một vấn đề bảo mật có thể ảnh hưởng đến các trang web sử dụng các thư viện cụ thể của bên thứ ba (bao gồm cả polyfill.io). Vấn đề này đôi khi có thể chuyển hướng khách truy cập khỏi trang web mong muốn mà chủ sở hữu trang web không biết hoặc không cho phép. Nhiều mẫu JavaScript của chúng tôi trước đây đã bao gồm phần khai báo tập lệnh polyfill.io. Chúng tôi đã xoá phương thức này khỏi các mẫu của mình. Nếu đã sử dụng các mẫu JavaScript có chứa nội dung khai báo này, bạn nên xoá nội dung khai báo.
Để tải Thư viện địa điểm, trước tiên hãy tải Maps JavaScript API, bằng cách thêm
trình tải khởi động cùng dòng vào mã xử lý ứng dụng của bạn, như minh hoạ trong đoạn mã sau:
<script>
(g=>{varh,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});vard=b.maps||(b.maps={}),r=newSet,e=newURLSearchParams,u=()=>h||(h=newPromise(async(f,n)=>{await(a=m.createElement("script"));e.set("libraries",[...r]+"");for(king)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({key:"YOUR_API_KEY",v:"weekly",// Use the 'v' parameter to indicate the version to use (weekly, beta, alpha, etc.).// Add other bootstrap parameters as needed, using camel case.});
</script>
Tiếp theo, hãy sử dụng toán tử await để gọi importLibrary()
từ trong hàm async, như minh hoạ dưới đây: