BingMap - 获取null错误的原型 [英] BingMap - getting prototype of null error
问题描述
我搜索了google和 stackoverflow
,但找不到解决方案
来解决此问题。我在我的视图
中加载地图
。
I have searched google and stackoverflow
, but could not find a solution
for this issue. I am loading the map
like this, in my view
.
<img
ng-src='https://dev.virtualearth.net/REST/v1/Imagery/Map/Road/
{{Latitude.__text}},{{Longitude.__text}}/12?mapSize=77,120&
key={{Key}}'></img>
以下是它在index.html中加载的方式
Below is how its loaded in index.html
<script type='text/javascript' src='https://www.bing.com/mapspreview/sdkrelease/mapcontrol?callback=loadMapScenario' async defer></script>
<script type='text/javascript' src='app/services/bing.js?' async defer></script>
以下是我的控制器
代码,其中i我试图调用地图
。
Below is my controller
code, where i am trying to call the maps
.
function GetMap() {
if (typeof Microsoft !== undefined && typeof Microsoft.Maps !== undefined &&
Microsoft.Maps.Map !== null) {
//Map API available add your map load code.
angular.element(document).ready(function() {
map = new Microsoft.Maps.Map(document.getElementById('myMapL'), {
credentials: Key,
mapTypeId: "r",
zoom: 4
});
});
} else {
setTimeout(GetMap(), 100);
}
}
我收到以下错误:
TypeError: Cannot read property 'prototype' of null
at k (bing.js:11)
at h (bing.js:11)
at e (bing.js:11)
at t.l [as instance] (bing.js:11)
at h (bing.js:11)
at e (bing.js:11)
at t.l [as instance] (bing.js:11)
at new Microsoft.Maps.Map (bing.js:13)
at HTMLDocument.<anonymous> (file-location.js:121)
at j (jquery-1.11.0.min.js:2)
推荐答案
在地图脚本URL中,您使用的是另一个用于加载地图的回调函数。 (loadScenario vs GetMap)。此外,您似乎正在使用重定向URL而不是记录的地图脚本URL(这可能在将来中断)。尝试将地图脚本URL更改为:
In the map script URL you are using a different callback function that you o function to load the map. (loadScenario vs GetMap). Also, it looks like you are using the redirect URL rather than the documented map script URL (this will likely break in the future). Try changing the map script URL to this:
<script type='text/javascript' src='http://www.bing.com/api/maps/mapcontrol?branch=experimental&callback=GetMap' async defer></script>
不确定你的应用中有什么bing.js。假设这是您映射加载代码的地方。您需要在地图脚本之前加载它,否则地图脚本可能会在您的代码执行之前加载,从而尝试在将GetMap函数加载到页面之前加载地图。
Not sure what bing.js is in your app. Assuming this is where you have you map load code. You will want to load this before the map script otherwise the map script may load before your code does and thus try to load the map before your GetMap function is loaded into the page.
或者,您可能会发现此代码示例很有用: https: //github.com/Microsoft/BingMapsV8CodeSamples/blob/master/Samples/Experimental/Map_WithAngular1.html
Alternatively, you may find this code sample useful: https://github.com/Microsoft/BingMapsV8CodeSamples/blob/master/Samples/Experimental/Map_WithAngular1.html
这篇关于BingMap - 获取null错误的原型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!