将Google Maps + MarkerWithLabel加载到一起?

时间:2014-07-29 19:39:28

标签: requirejs

还有其他人使用Google Maps + MarkerWithLabel + RequireJS吗?我基本上想看看是否有可能消除MarkerWithLabel的额外http请求,并以某种方式优化所有内容的加载和初始化。

现在我正在从一个Require模块中动态加载Google Maps库(我需要这个动态参数),但我只能在加载Google地图后让MarkerWithLabel正常工作。理想情况下,将它们一起提取或至少预加载MarkerWithLabel并保持Google Maps句柄(URL)动态是很棒的。

如果无法整合Maps + MarkerWithLabel,我正在考虑“延迟模块评估”。我很好奇其他人是如何接近这个的。

http://blog.millermedeiros.com/requirejs-2-0-delayed-module-evaluation-and-google-maps/

2 个答案:

答案 0 :(得分:1)

您可以使用requirejs async plugin。基本上你应该最终得到类似的东西:

require.config({
    paths: {
        /* Bower Libraries */
        async: '../bower_components/requirejs-plugins/src/async',
        markerlabel: '../bower_components/gmaps-makerwithlabel/index',
...

之后,您可以对其进行填充以确保首先加载谷歌地图:

markerlabel: {
    deps: ['async!https://maps.googleapis.com/maps/api/js&sensor=false']
}

答案 1 :(得分:0)

看看这个:https://github.com/lupugabriel1/gmaps-markerwithlabel-amd

基于Google Maps MarkerWithLabel 1.1.9。这基本上是一个添加src / markerwithlabel-amd.js的分支。

此扩展程序为Google Maps Marker Javascript API v3的Google Maps MarkerWithLabel实用程序库提供AMD支持。还解决了requirejs优化器的问题。