Уничтожение импортированного объекта в JavaScript - PullRequest
1 голос
/ 14 апреля 2019

Давайте представим, что у меня есть два файла. Файл номер один называется obj.js и выглядит так:

const obj = {
  item1: 'some text',
  item2: 'some other text',
  item3: 'more text'
  ...
  item99: `yet more text`
}

export default obj

Файл № 2 выглядит как main.js и выглядит так:

import obj from './obj.js'

Теперь вот мой вопрос. Во втором файле (main.js) я могу получить доступ к свойствам объекта obj следующим образом: obj.item2. Я хочу знать, могу ли я деструктурировать этот объект, чтобы получить доступ к любому из свойств следующим образом: item2, item26, item38 и т. Д. (Т. Е. Без необходимости предварять его obj.).

Если так, есть идеи, как?

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

1 Ответ

0 голосов
/ 14 апреля 2019

У вас вопрос просто в том, как вы можете разрушить все свойства объекта.На самом деле его динамические переменные называются другими словами, что невозможно.Но здесь вы хотите объявить их в глобальной области видимости, используя global и имена динамических свойств.

import obj from './obj.js'
Object.keys(obj).forEach(x => global[x] = obj[x]);
...