我正在尝试在新的 (3.0.0-preview6.19307.2) Blazor server-side application中使用Bing JavaScript Map 控件。我已经在 Blazor 的早期版本和客户端应用程序中进行了这项工作。
当前的Blazor JavaScript 互操作指南不建议需要任何新步骤,但是当我在 _Hosts.cshtml的正文中添加以下部分并调用createMap函数时,我收到一条错误消息
Microsoft.AspNetCore.Components.Browser.Rendering.RemoteRenderer:
警告:未处理的异常呈现组件:未定义“Microsoft”
ReferenceError: 'Microsoft' 未在 window.createMap ( https://localhost:44372/:79:9 )中定义
<script type="text/javascript" src="http://www.bing.com/api/maps/mapcontrol"></script>
<script>
var map = null;
window.createMap = (data) => {
if (map != null)
return;
map = new Microsoft.Maps.Map('#myMap',
{
credentials: '... my credentials ...',
zoom: 1
}
);
Microsoft.Maps.loadModule('Microsoft.Maps.HeatMap');
return ;
};
</script>
此代码在放置在等效客户端大小的 Blazor 项目的 index.html 中时确实可以正常工作,因此我猜测需要一些额外的步骤才能将地图导出到 Microsoft 命名空间。谁能建议我缺少什么?