angular - Proprietatea 'pixiOverlay' nu există


În proiectul meu Angular 8 trebuie să pun niște marcaje pe o hartă, așa că folosesc Leaflet. Deoarece uneori sunt câteva mii de marcaje, am decis să folosesc Leaflet.PixiOverlay pentru a evita problemele de performanță. Așa că am instalat și importat toate bibliotecile:

import * as PIXI from 'pixi.js';
import 'leaflet-pixi-overlay';
import * as L from 'leaflet';

Până acum totul bine. Problemele apar atunci când încerc să desenez un marker (urmez exemplul de la Leaflet.PixiOverlay).

const pixiOverlay = L.pixiOverlay(function(utils) {

  //

}, pixiContainer);
pixiOverlay.addTo(this.map);

Obțin L.pixiOverlay evidențiat cu roșu și această eroare de compilare:

EROARE: .... /pages/maps/map.component.ts(86,29): eroare TS2339: Proprietatea 'pixiOverlay' nu există pe tipul 'typeof import("C:/Users/ .... /node_modules/@types/leaflet/index")'.

Vreo idee? Mulțumesc anticipat.

Răspuns #1

Am avut și eu această problemă și am reușit să ratez soluția din comentarii. Așa că doar ca să nu o rateze și alții așa cum am făcut eu:

Soluția este să înlocuiești

const pixiOverlay = L.pixiOverlay(...)

cu

const pixiOverlay = (L as any).pixiOverlay(...)