Extjs 将谷歌地图集中在商店的点上-Sencha Touch 2
我在一个视图中有一个带有谷歌地图的地图组件,我想动态设置它的中心。它位于详细信息样式页面上,因此加载数据时会将数据传递给它,因此最好在启动函数中设置中心。在尝试引用地图时,我不断遇到一系列未定义的错误,并且在针对Sencha地图组件时,使用Google Maps setCenter()函数不起作用。我非常确定使用setCenter是实现这一点的最佳方式,但我似乎无法确定目标并执行它 如果您对此有任何建议,请提前感谢: 映射代码(Ext.Container中的项目): 使用提供的方法 您可以使用获取对地图的引用。如果您真的无法通过这种方式获得它,请给它一个Extjs 将谷歌地图集中在商店的点上-Sencha Touch 2,extjs,sencha-touch,sencha-touch-2,Extjs,Sencha Touch,Sencha Touch 2,我在一个视图中有一个带有谷歌地图的地图组件,我想动态设置它的中心。它位于详细信息样式页面上,因此加载数据时会将数据传递给它,因此最好在启动函数中设置中心。在尝试引用地图时,我不断遇到一系列未定义的错误,并且在针对Sencha地图组件时,使用Google Maps setCenter()函数不起作用。我非常确定使用setCenter是实现这一点的最佳方式,但我似乎无法确定目标并执行它 如果您对此有任何建议,请提前感谢: 映射代码(Ext.Container中的项目): 使用提供的方法 您可以使用获
id
,然后使用Ext.getCmp(yourId)
(不推荐)
在执行此操作之前,请注意贴图已实际渲染(将更新逻辑放在侦听器中)
使用提供的方法
您可以使用获取对地图的引用。如果您真的无法通过这种方式获得它,请给它一个id
,然后使用Ext.getCmp(yourId)
(不推荐)
在执行此操作之前,请注意贴图已实际渲染(将更新逻辑放在侦听器中)
您是如何获取调用设置中心的地图的?@Viswa我已经设法从商店中获取了我想要更新地图的数据,但是关于实际定位地图和执行设置中心功能,我不太确定,这就是为什么我请求一些帮助。到目前为止,我唯一的尝试是尝试通过Ext.getComponent获取地图,但没有成功。您是否有容器id?@rixo答案对于这个问题来说足够好了。您如何尝试获取地图以调用setCenter?@Viswa我已设法从存储中获取了我要更新地图的数据,但是关于实际瞄准地图和执行setCenter函数,我不太确定,这就是为什么我请求一些帮助。到目前为止,我唯一的尝试是通过Ext.getComponent获取地图,但没有成功。您有容器id吗?@rixo回答这个问题就足够了谢谢您的回答!maprender侦听器是在我的控制器中还是在视图本身中?两者都可以工作。我会把它放在控制器里,因为它看起来不像内部视图逻辑。谢谢你的回复!maprender侦听器是在我的控制器中还是在视图本身中?两者都可以工作。我会把它放在控制器中,因为它看起来不像内部视图逻辑。
{
xtype: 'map',
height: 150,
itemId: 'map',
width: '100%',
mapOptions : {
zoom : 12,
mapTypeId : google.maps.MapTypeId.ROADMAP,
navigationControl: true,
navigationControlOptions: {
style: google.maps.NavigationControlStyle.DEFAULT
}
}
}
yourContainer.down('#map').setMapCenter({latitude, longitude});