Finns det ett sätt att ignorera typinkompatibilitet i TypeScript?
Jag har tittat på att använda TypeScript med Mongoose för MongoDB. Mestadels har det fungerat bra, men med vissa typer av förutsättningar får jag varningar från TypeScript-kompilatorn.
Om jag gör ett eller så här:
{"$or": [{done: {"$exists": false}}, {done:false}]}
Jag får följande varning:
Incompatible types in array literal expression: Types of property 'done' of types '{ done: { $exists: bool; }; }' and '{ done: bool; }' are incompatible.Jag förstår varför, men finns det ett sätt att uttrycka detta så att kompilatorn kommer att acceptera det?
Svar #1
Du kan göra typkontroll på något av elementen till any för att "stänga av" typkontrollen:
[<any>{done: {"$exists": false}}, {done:false}]
Eller, om du initialiserar en variabel, kan du göra något som detta:
var n: any[] = [{done: {"$exists": false}}, {done:false}]
