Javascript перечисления и абстрактные фабрики - PullRequest
0 голосов
/ 28 марта 2020

Недавно при написании моего веб-приложения у меня возникли проблемы с перечислениями

const myEnum = Object.freeze({
 fooKey: 'fooValue',
 barKey: 'barValue',
})

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

fooAction(){
 //some-code
}
barAction(){
 //some-code
}
const actionList = {
 fooValue: fooAction,
 barValue: barAction
}
executeAction(enumValue){
 return actionList[enumValue]()
}

Есть ли какой-нибудь хороший способ объединить actionList и myEnum без изменения значений myEnum, чтобы мне не приходилось жестко кодировать в actionList fooValue и BarValue?

...