Получать данные о свойстве в классе по имени

Имеется следующий интерфейс

export interface Contribuyente {
    Campo1: number;
    Campo2: string;
    Campo3: number;
    Campo4: number;
}

И после производится следующий интерфейс

export interface AppState {
    Contribuyentes: Contribuyente[];
}

И с этим производится "класс"

export const state: AppState = {
    Columnas: [],
    Contribuyentes: [
        { Campo1: 1, Campo2: 'N', Campo3: 1, Campo4: 75, },
        ......
    ]
}

И сейчас, когда я хочу сделать, он состоит в методе, в том, чтобы получать данные, содержавшие например в Campo1, но только получая как параметр в том же самом, имя Campo1.

Тривиальное решение дано имя поля, делать большой переключатель и возвращать поле, которое соответствует:

public obtenercampo(campo: string): string {
    switch (campo) {
        case 'Campo1':
            valor = clase.Campo1;
            break;
        ....
    }
    .....
}

Но если бы у Облагаемого налогом интерфейса было 30 полей, эта модель не является красивой.

Есть какой-то другой способ соглашаться на эти свойства, зная имя поля, которое я хочу получить?

6
задан 14.06.2019, 16:23
0 ответов