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

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

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

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

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

المثال الحالي باستخدام 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>

عند استخدام هذه الطريقة، يتم تحميل واجهة برمجة تطبيقات JavaScript للخرائط في الوقت نفسه الذي يتم فيه تحميل الصفحة. لتنفيذ التحميل المضمّن، يجب أولاً استبدال العلامة <script> التي تُحمِّل www.google.com/jsapi ("before" بالعلامة <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 آخر

يتيح لك التحميل الديناميكي التحكم في وقت تحميل واجهة برمجة تطبيقات JavaScript للخرائط. على سبيل المثال، يمكنك الانتظار لتحميل واجهة برمجة تطبيقات JavaScript للخرائط إلى أن ينقر المستخدم على زر أو ينفّذ إجراءً آخر. لتنفيذ التحميل الديناميكي، يجب أولاً استبدال العلامة <script> التي تُحمِّل www.google.com/jsapi ("before") برمز لإضافة العلامة <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);

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