Website-Suche

abstrakter Syntaxbaum - Was ist der AST für Dekoratoren in TypeScript?


Ich muss wissen, wie der AST-Name der TypeScript-Dekoratoren lautet?

Ich brauche es für die ESLint-Selektoren.

Ich habe irgendwo ein Werkzeug gesehen, aber ich kann es nicht finden.

Antwort #1

Dekorateure sind auf den Modifikatoren des dekorierbaren Knotens verfügbar. Es gibt jedoch eine ts.getDecorators-Hilfsmethode, die Sie verwenden können, um auf sie zuzugreifen:

const classDecl: ts.ClassDeclaration = ...;
const decorators = ts.getDecorators(classDecl);
// use decorators here

Dies ist die Art von ts.Decorator:

export interface Decorator extends Node {
    readonly kind: SyntaxKind.Decorator;
    readonly parent: NamedDeclaration;
    readonly expression: LeftHandSideExpression;
}

https://ts-ast-viewer.com/#code/AIZQ9gtgpgIlDGYBOBDALsgUPANigzvgAQCiAHihAA45REDemAvkA