我知道 Google map 库,如 here 中所述。我目前正在像这样加载它们:
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?libraries=places,weather&sensor=false"></script>
问题是我的 map 页面允许用户做很多不同的事情,而我现在使用 4 个库。 我想要的是仅在页面加载时包含“基本”Google map javascript,并仅在需要时(例如,当用户想要查看天气时)延迟加载每个库。
这是否可能,而无需每次需要库时重新加载整个 Google Maps API?
最佳答案
我知道你来自哪里,但是:
a)我不知道该库是打算以这种方式使用的,因此即使您可以让它工作,也可能无法保证它的稳定性,并且
b) 上面的调用会拉取一个简短的脚本,然后调用一个名为 getScript 的函数并将其传递给它:
https://maps.googleapis.com/maps/api/js?libraries=places,weather&sensor=false
如果您在调用中省略“天气”部分,不出所料,它会给出以下内容:
https://maps.googleapis.com/maps/api/js?libraries=places&sensor=false
这两个文件的大小相差 0.6k。当您考虑压缩时会更少。
我怀疑尝试单独加载它们会节省大量时间。总的来说,由于涉及每个请求的延迟,无论如何将它们加载在一起可能会更快。
关于javascript - Google map 库的延迟加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18183639/