نقل البيانات: وحدة "خرائط Google" في google.load

في 13 أكتوبر 2021، سنوقف الخدمة التي توفّر وحدة "خرائط Google" لـ google.load. هذا يعني أنّه بعد 13 أكتوبر 2021، إذا حاولت استخدام وحدة "خرائط Google" في google.load، ستتلقّى رسالة خطأ (وحدة "خرائط Google" غير متاحة)، ولن يتم تحميل أي خريطة. لمساعدتك في تجنُّب أي عطل محتمل، عليك التبديل إلى أحد البدائل.

ما هو الإجراء الواجب اتّخاذه؟

أولاً، عليك إزالة علامة <script> التي تحمّل أداة تحميل google.load، ثم إزالة الطلبات إلى google.load. إذا كنت تستخدم Google Loader لأغراض أخرى، يمكنك ترك علامة <script> الخاصة بأداة التحميل في مكانها.

بعد ذلك، نفِّذ طريقة جديدة لتحميل Maps JavaScript API (حدِّد أحد الخيارات التالية):

مثال حالي باستخدام Google Loader

يوضّح المثال التالي كيفية استخدام Google Loader حاليًا لتحميل Maps JavaScript API (هناك مجموعتان من الرموز البرمجية <script>):

قبل

<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>

عند استخدام هذا الأسلوب، يتم تحميل 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() فارغة، يتم استدعاؤها عند تحميل مكتبة "خرائط Google" بنجاح:

<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;

بعد ذلك، أرفِق دالّة ردّ الاتصال بعنصر النافذة على النحو التالي:

window.initMap = function() {
  // Google Maps JS API is loaded and available
};

أخيرًا، أضِف علامة <script> إلى عنوان الصفحة على النحو التالي:

document.head.appendChild(script);

الاطّلاع على المستندات