Пакет Bing Maps V8 TypeScript - Microsoft не определена - PullRequest
0 голосов
/ 12 сентября 2018

Я хочу использовать BingMaps в моем проекте реагирования (машинопись). Я установил пакет npm bingmaps, который приносит необходимые d.ts.

Я импортирую модуль через:

import 'bingmaps';

Внутри моего компонента я делаю следующее:

public componentDidMount(){
    var map = new Microsoft.Maps.Map('#map',
        {
            credentials: 'XXXXX',
            maxZoom: 6,
            minZoom: 2,
        });
};

На этом этапе мое приложение выдает следующую ошибку:

Microsoft.AspNetCore.NodeServices.HostingModels.NodeInvocationException: предварительная визуализация не удалась из-за ошибки: ReferenceError: Microsoft не определена

Как правильно импортировать BingMaps, чтобы включить все необходимые пространства имен / модули?

1 Ответ

0 голосов
/ 14 сентября 2018

У меня нет предварительных знаний о Bing Maps или ASP.NET JavaScript, но вот результаты моего исследования. Пакет bingmaps содержит только объявления типов. Фактическая реализация поставляется в файле JavaScript (см. документация ), и я предполагаю, что реализация не совместима с предварительным рендерингом. Так что вам нужно либо:

  1. Полностью отключите предварительную визуализацию, удалив атрибуты asp-prerender-*, описанные в документации , или

  2. Пропустите предварительную визуализацию только для этого одного компонента React, поместив тест, подобный if (typeof window !== 'undefined'), вокруг кода, как описано здесь .

...