我在视图中有一个Google地图组件,我希望动态设置其中心。它位于详细信息样式页面上,因此数据在加载时会传递给它,因此在启动函数中设置中心将是首选。我在尝试引用地图时遇到一系列未定义的错误,并且使用Google Maps setCenter()函数在定位Sencha地图组件时不起作用。我很确定使用setCenter是实现此目的的最佳方法,但我似乎无法定位并执行它。
对此提出任何建议都会很棒,提前谢谢:
映射代码(Ext.Container中的项目):
{
xtype: 'map',
height: 150,
itemId: 'map',
width: '100%',
mapOptions : {
zoom : 12,
mapTypeId : google.maps.MapTypeId.ROADMAP,
navigationControl: true,
navigationControlOptions: {
style: google.maps.NavigationControlStyle.DEFAULT
}
}
}
答案 0 :(得分:1)
使用提供的setMapCenter
方法。
您可以使用component query获取对地图的引用。如果你真的不能这样做,请给它id
并使用Ext.getCmp(yourId)
(不推荐)。
在执行此操作之前,请务必实际渲染地图(将更新逻辑放在maprender
侦听器中)。
yourContainer.down('#map').setMapCenter({latitude, longitude});