TypeScript: kan ikke slå type-definitioner fra for et bestemt bibliotek
TypeScript-version: 2.4.1
For eksempel vil jeg bruge et bibliotek fra npm kaldet awesome-lib. Dette bibliotek leveres allerede med en TypeScript typedefinition, men denne er forældet og fejlbehæftet. Forfatteren af biblioteket opdaterer ikke denne.
Jeg har prøvet at deaktivere den type definition helt i min egen declarations.d.ts-fil i mit projekt:
declare module 'awesome-lib';
Desværre læser TypeScript først typedefinitionen i biblioteket og kaster nogle fejl. Så det er ikke muligt for mig at deaktivere/skjule dette bibliotek for mit projekt.
Er der nogen, der ved, hvordan man deaktiverer typekontrol for ét specielt bibliotek?
Svar #1
Måske kunne du prøve at bruge require i stedet for import:
/* tslint:disable:no-var-requires */
const awesomeLib: any = require("awesome-lib");
/* tslint:enable:no-var-requires */
ulemperne er, at du hverken har typekontrol eller intellisense.
Svar #2
Det er måske ikke en rigtig løsning, men hvis biblioteket er forladt og ødelagt, kunne du forgrene det bibliotek, ændre dets typer og bruge det i dit projekt.
