Могу ли я деструктурировать переменную, имя которой определяется самой переменной? - PullRequest
1 голос
/ 13 января 2020

Например у меня в localStorage свойства объекта Meteor.userId и Meteor.loginToken. Я могу изменить их следующим образом:

const {
      'Meteor.userId': userId,
      'Meteor.loginToken': loginToken,
    } = localStorage;

Но могу ли я определить Meteor.userId и Meteor.loginToken как переменные? Например:

const METEOR_USER_ID = 'Meteor.userId';
const METEOR_LOGIN_TOKEN = 'Meteor.loginToken';

Пытался использовать следующий код, но он не работает:

const {
      METEOR_USER_ID: userId,
      METEOR_LOGIN_TOKEN: loginToken,
    } = localStorage;

1 Ответ

5 голосов
/ 13 января 2020

Вам понадобится вычисляемое свойство , чтобы взять ключ переменной.

const {
    [METEOR_USER_ID]: userId,
    [METEOR_LOGIN_TOKEN]: loginToken,
} = localStorage;
...