首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未明错误:传单必须在传单热图插件之前加载。

未明错误:传单必须在传单热图插件之前加载。
EN

Stack Overflow用户
提问于 2018-06-06 16:42:05
回答 1查看 1.6K关注 0票数 0

我想用heatmapjs和传单创建一个热图。但是,我仍然无法加载Javascript文件。我的控制台中的错误大约是2次中的1次:

代码语言:javascript
复制
leaflet-heatmap.js:23 Uncaught Error: Leaflet must be loaded before the leaflet heatmap plugin
    at leaflet-heatmap.js:23
    at leaflet-heatmap.js:28

因此,有一半的时间是正确加载的,而另一半则没有。

我尝试使用不同线程中建议的不同选项,但都没有效果。

代码语言:javascript
复制
<script src="<?=base_url()?>leaflet/leaflet-src.js"></script>
    <script type="text/javascript">
        var myScript = document.createElement('script');
        myScript.setAttribute('src', '<?=base_url()?>assets/js/plugins/heatmap.js');
        document.head.appendChild(myScript);

        myScript.onload = function() {
            var script = document.createElement('script');
            script.src = "<?=base_url()?>assets/js/plugins/leaflet-heatmap.js";
            script.async = true;
            document.head.appendChild(script);
        };
    </script>

代码语言:javascript
复制
<script async src="<?=base_url()?>assets/js/plugins/heatmap.js"></script>
<script src="<?=base_url()?>leaflet/leaflet-src.js"></script>
<script type="text/javascript">
    document.addEventListener('DOMContentLoaded', function(event) {
        var script = document.createElement('script');
        script.src = "<?=base_url()?>assets/js/plugins/leaflet-heatmap.js";
        script.async = true;
        document.head.appendChild(script);
    });
</script>

代码语言:javascript
复制
<script async src="<?=base_url()?>assets/js/plugins/heatmap.js"></script>
<script src="<?=base_url()?>leaflet/leaflet-src.js"></script>
<script async src="<?=base_url()?>assets/js/plugins/leaflet-heatmap.js"></script>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-06 17:05:45

您的脚本标记需要按特定顺序加载。需要首先加载leaflet.js。如果在脚本标记上使用异步属性,则无法保证加载它们的顺序。若要解决您的问题,请省略异步属性:

代码语言:javascript
复制
<script src="<?=base_url()?>assets/js/plugins/heatmap.js"></script>
<script src="<?=base_url()?>leaflet/leaflet-src.js"></script>
<script src="<?=base_url()?>assets/js/plugins/leaflet-heatmap.js"></script>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50725512

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档