首页 > 解决方案 > 在javascript中动态加载leaflet.js

问题描述

我需要在 javascript 中动态加载leaflet.js 和leaflet.css 文件。所以我动态地创建脚本和链接标签并将它们附加到文档的头部,并使用脚本的 onload 函数来初始化地图。

但我收到一个错误“L 未定义”


    var leafletScript = document.createElement("script");
    leafletScript.id = "leafletScript"
    leafletScript.type = "text/javascript";
    leafletScript.src = "https://unpkg.com/leaflet@1.5.1/dist/leaflet.js";
    document.getElementsByTagName('head')[0].appendChild(leafletScript);

    var leafletCSS = document.createElement("link");
    leafletCSS.id = "leafletCSS"
    leafletCSS.setAttribute('rel', 'stylesheet');
    leafletCSS.setAttribute('type', 'text/css');
    leafletCSS.setAttribute('href', 
        'https://unpkg.com/leaflet@1.5.1/dist/leaflet.css');
    document.getElementsByTagName('head')[0].appendChild(leafletCSS);

    leafletScript.onload = function(){
        console.log(L);
    }

标签: javascriptleaflet

解决方案


推荐阅读