Лучший способ объявить несколько переменных, назначенных функции в Javascript - PullRequest
1 голос
/ 23 января 2020

Я ищу более короткий способ объявления этих переменных:

const [nav, header, footer] = [getProps(data, ['nav']), getProps(data, ['header']), getProps(data, ['footer']) ];

Я пробовал это, но это не сработало:

const [nav, header, footer] = getProps(data, ['nav','header', 'footer']);

функция getProps:

const getProps = (data, featureFlag) => {
    return get(data,`dataForServer.global.featureFlags.${featureFlag}`) ||
    false;
}

1 Ответ

1 голос
/ 23 января 2020

Измените функцию getProps, чтобы она возвращала массив на основе переданных ей флагов:

const getProps = (data, featureFlag) => 
  featureFlag.map(ff => get(data,`dataForServer.global.featureFlags.${ff}`) || false);

Затем можно выполнить:

const [nav, header, footer] = getProps(data, ['nav','header', 'footer']);
...