我正在尝试使用下面的backbonejs显示谷歌地图。
define([
'require',
'backbone',
'text!../templates/list.html',
], function(Require, Backbone, Template){
return Backbone.View.extend({
tagName: 'div',
template: _.template(Template),
initialize: function(){
this.render();
},
render: function(){
var self = this;
this.$el.html(this.template());
self.initMap();
},
initMap: function(){
var target = { lat: 1.098706, lng: 104.026971 };
var mapOption = {zoom: 12, center: target };
var mapElem = $(".container").find("#map-canvas");
var map = new google.maps.Map(mapElem, mapOption);
var marker = new google.maps.Marker({
position: target,
map: map
});
},
});
});
渲染完成后,我收到了这个错误:
未捕获的TypeError:无法设置属性' position'未定义的
我仍然对' 来自哪里感到困惑。 我已尝试过here和here
的解决方案你有什么想法来解决它吗? 感谢。
答案 0 :(得分:0)
尝试更改
var mapElem = $(".container").find("#map-canvas");
到
var mapElem = $(".container").find("#map-canvas")[0];