2

我正在尝试使用谷歌地图。我已将地图加载到面板上。

我有一个覆盖窗口,在其中我要求在地图上显示方向的来源和目的地。我通过以下方式获得对地图的引用Ext.getCmp('GMap');

但是,当我在 chrome 上运行它并检查控制台窗口时,我得到了这个错误。

Uncaught Error: Invalid value for property <map>: [object Object]

覆盖窗口点击处理程序的示例代码片段

listeners : {
   tap : function() {
      function showDirections(res) {
         var directionsService = new google.maps.DirectionsService();
         var directionsDisplay = new google.maps.DirectionsRenderer();

         var map = Ext.getCmp('GMap');
         directionsDisplay.setMap(map);
         directionsService.route(request, function(response, status) {
         if (status == google.maps.DirectionsStatus.OK) {
              directionsDisplay.setDirections(response);
         }
    });
  }
 }
}
4

1 回答 1

1

jQuery 也这样做。当您抓取 $("#GMap") 时,您将返回一个真正元素为 [0] 的数组。将结果填充为getCmp()实际的 dom 元素。 http://www.sencha.com/forum/showthread.php?122684-accessing-component-property-from-variable-dom-element-or-Ext.getCmp () 似乎类似。

于 2012-04-28T19:41:52.580 回答