Добавление Bing Map в приложение Blazor - PullRequest
0 голосов
/ 16 февраля 2020

Я работаю над проектом. Net Core Blazor, и мне нужно добавить Bing Map в мое приложение. Я добавил карту, и все, кажется, работает нормально: _Host:

<script async defer src="https://www.bing.com/api/maps/mapcontrol?callback=GetMap&&key=[key]"></script>

Моя javascript функция:

function GetMap() {
    var map = new Microsoft.Maps.Map('#myMap', {
        credentials: "[key]"
    });

    var loc = new Microsoft.Maps.Location(lan, lat);
    map.setView({ center: loc, zoom: 15 });
}

На своей странице контактов я добавил div:

<div id="myMap" style='position:relative;width:100%;height:400px;'></div>

Проблема в том, что карта не будет отображаться при переходе на страницу контакта, она появится только после очистки кэша (Crtl + F5)

Я также пытался вызовите функцию, используя JSRunTime:

protected override async Task OnAfterRenderAsync(bool firstRender)
{
    if (firstRender)
    {
        await JSRuntime.InvokeVoidAsync("GetMap");
    }
}

Но я получил эту ошибку:

Ошибка: Microsoft.JSInterop.JSException: Невозможно прочитать свойство 'prototype' с нулевым TypeError: Не удается прочитать свойство 'prototype' со значением null

Кто-нибудь знает причину и способ ее устранения?

=======================

Редактировать

Я также пытался удалить функцию CallBack из вызова javascript, и я получаю эту ошибку:

Microsoft.JSInterop.JSException: Microsoft Не определено ReferenceError: Microsoft не определена

...