工作我读了如何让谷歌地图下面article,并gmaps.js
与RequireJS工作。然而,当我建立我的项目时,RequireJS与Almond交换。在上面的文章中,它指出杏仁不会与RequireJS异步插件一起使用。如果没有异步插件,Google的依赖关系不会被加载,并且gmaps.js
会引发错误。获取RequireJS异步插件与almond.js
有没有办法来解决这个问题,仍然在使用杏仁,而不是RequireJS项目加载谷歌地图的代码?
工作我读了如何让谷歌地图下面article,并gmaps.js
与RequireJS工作。然而,当我建立我的项目时,RequireJS与Almond交换。在上面的文章中,它指出杏仁不会与RequireJS异步插件一起使用。如果没有异步插件,Google的依赖关系不会被加载,并且gmaps.js
会引发错误。获取RequireJS异步插件与almond.js
有没有办法来解决这个问题,仍然在使用杏仁,而不是RequireJS项目加载谷歌地图的代码?
是的,我也找到了。动态库不能被加载它说。我想你必须在本地下载它。
Almond.js can't handle with asynchronous plugins。您可以使用jQuery.Deferred来加载库。
var googleMapsLoader = function(func, options) {
var defaults = {
"sensor" : "false",
"v" : "3",
"key" : "",
"language" : "pt",
"region" : "br",
"libraries": ""
};
$.when($.ajax({
type: "GET",
dataType: "script",
data: $.extend({}, defaults, options),
url: "https://maps.google.com/maps/api/js",
crossDomain: true
})).then(function() {
func();
});
};
/*
* Loading Google Maps API with $.Deferred.
*/
googleMapsLoader(function() {
// You may call your code here.
}, {
"libraries" : "geometry,places",
"v" : "3.7"
});
使用$ .Deferred和Maplace查看this example。