所以我正在努力学习 RequireJS 来工作。这似乎很容易,但后来我遇到了一个问题。如何从其中一个依赖项中传递对象?
下面的代码为新变量返回“TypeError: Undefined is not a function”。我尝试记录 GoogleMap 的类型,但它也返回未定义。
这样做的正确方法是什么?
主.js
require(['test', 'geo', 'googlemaps'], function (GoogleMap) {
var map = new GoogleMap();
});
googlemaps.js
define(function() {
function GoogleMap(){
var i = 0;
var userMarkers = [];
var map = {}
this.initialize = function(lat,lng){
map = getMap(lat,lng);
}
var getMap = function(lat,lng){
var asldOptions = {
zoom: 4,
center: new google.maps.LatLng(59, 18),
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map-canvas"), asldOptions);
return map;
}
}
}
);
编辑:我应该补充一点,当我删除顶部的“定义”行和 googlemaps.js 底部的相应括号时,它工作正常。