javascript - 谷歌地图没有在java脚本中第二次加载
问题描述
在 SAP UI5 中,谷歌地图没有第二次加载。我在 attachPatternMatched() 函数上加载地图。那么,我该如何解决这个问题呢?
onInit: function() {
var that = this;
var oRouter = sap.ui.core.UIComponent.getRouterFor(this);
oRouter.getRoute("master").attachPatternMatched(this.setMapData, this);
},
setMapData: function() {
var that = this;
this.getView().getModel("BookMyRideModel").read("/Stops", {
success: function(response) {
var arry = [];
for (var k = 0; k < response.results.length; k++) {
var lat = response.results[k].Latitude;
var long = response.results[k].Longitude;
var address = response.results[k].Stop_Name;
var pincode = response.results[k].Pincode;
var id = response.results[k].Stop_Id;
arry.push({
"lat": lat,
"long": long,
"addr": address,
"pin": pincode,
"key": id
});
}
that.setMarkerForMap(arry);
},
error: function(response) {
}
});
},
setMarkerForMap: function(array) {
var that = this;
var markersarry = [];
var map = new google.maps.Map(document.getElementById('googleMap'), {
center: new google.maps.LatLng(parseFloat(12.9715),
parseFloat(77.5945626)),
zoom: 2,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
}
在 setMapForMarkers() 中,我在 Map 上加载来自 oData 服务的多个标记。
[After clicking other tabs in master page, and later on clicking Bokk my ride tab , that time facing the issue][1]
谢谢和问候, 拉欣
解决方案
onInit 函数在您的组件初始化时执行。这个方法只被调用一次,这样就解释了为什么你的地图没有第二次加载。您可能想尝试在 onAfterRendering() 函数中添加您的函数。
推荐阅读
- api - 带有 API 网关的微服务 OAuth - 架构
- oozie - 有没有办法让协调员复活?
- html - 引导指标编号,更改颜色
- keras - keras:set_weights() 不会改变值
- sql - 根据另一个过滤器的日期范围过滤结果
- sql - 数据上的 STUFF、UNPIVOT 和 group By 子句
- http - nginx 多个虚拟主机 - 错误 - 文件太多?
- php - 如果攻击者连续几天每毫秒重复向服务器发出请求,服务器会发生什么情况?
- excel - Excel函数水平小计函数到隐藏列
- javascript - JavaScript:在 Android 上阻止文本输入的退格键