Próbuję napisać definicje typów dla pakietu NPM xmldoc
.Indexer wciąż otrzymuje błąd tslint "dostęp do obiektu przez literały łańcuchowe jest zabroniony"
Do tej pory mam to:
declare module 'xmldoc' {
export class XmlDocument {
constructor(contents: string);
public children: IXmlNode[];
}
export interface IXmlNode {
attr: IXmlAttributes;
val: string;
name: string;
children: IXmlNode[];
}
export interface IXmlAttributes {
[index: string]: string;
}
}
tslint wciąż skarży się w tym kodzie
valueId = node.attr["id"];
z komunikatem o błędzie object access via string literals is disallowed
myślałem mój podziałowe ([index: string]: string
) obejść ten .
Czy ktoś może mi dać pojęcie, dlaczego nie działa?
Myślę, że wygląda to jak błąd w tslint, prawdopodobnie po prostu nie wykluczyłem tej reguły dla podpisów indeksu. Wygląda to na prawidłowy przypadek użycia, spróbuj zgłosić zgłoszenie/sugestię błędu: https: //github.com/palantir/tslint/issues – Alex