возможно ли иметь вычисляемое свойство в enum (вызов функции) с помощью переменной из другого класса? - PullRequest
0 голосов
/ 30 сентября 2019

Я хочу иметь возможность устанавливать новые значения для перечисления, используя информацию из другого класса.

Я пытался поместить enum в класс и вызывать каждое свойство, чтобы дать им новые значения, но свойства enum доступны только для чтения. не мог найти способ сделать это доступным для записи. Тогда у меня был enum в отдельном файле, но тогда я не знал, как перенести туда значение и использовать его.

переменная соединяется с HTTP-клиентом.

import {ClassVariable} from "...";

export enum myEnum {
 enum1=getValue("enum1"),
 . . . 
}

function getValue(text: string): number{
const classVariable: typeof ClassVariable; //error must be initialized
if(text==="enum1"){
  retun ClassVariable.getNumber();}
}

код должен иметь возможность инициализировать значения перечисления

1 Ответ

0 голосов
/ 30 сентября 2019

Перечисления не существуют в Javascript.

В Typescript они затем компилируются в объекты .

Также, по определению, перечисления являются константами. Они не должны быть установлены динамически.

Учитывая все это, вы должны просто использовать объект и вызывать Object.freeze(), когда закончите его настройку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...