Как сохранить деструктурированный импорт как свойства одного объекта? - PullRequest
0 голосов
/ 14 мая 2018

Мой сценарий состоит в том, что @/helpers/filters имеет функции A, B, C, D, E, F ... и мне нужны только A, B, C, и я хочу сохранить их внутри 1 объекта filters, а нев качестве отдельных значений A, B, C.

Я могу сделать это в два этапа:

import {
    A, B, C
} from '@/helpers/filters';

let filters = {
    A, B, C
};

, но, скорее, упростить его до чего-то вроде:

import {
    A, B, C
} as filters from '@/helpers/filters';

но этот синтаксис подсвечивается как «выражение не является присваиванием или вызовом».

1 Ответ

0 голосов
/ 14 мая 2018

Нет синтаксиса для этого (в настоящее время). Ваш выбор:

  1. Создайте модуль (возможно, @/helpers/abcfilters), который импортирует только A, B и C, а затем экспортирует их:

    export { A, B, C } from '@/helpers/filters';
    

    ... и затем используйте этот модуль вместо:

    import * as filters from '@/helpers/abcfilters';
    
  2. Используйте import * as filters from '@/helpers/filters'; и просто не используйте то, что вам не нужно.

  3. Импорт A, B и C по отдельности. Если вы хотите, после импорта их, вы можете добавить их значения к объекту, а затем использовать этот объект, но имейте в виду, что если у вас есть какие-либо циклические зависимости, то A, B и C, которые вы получаете изначально, могут еще не иметь своих окончательных значений , (И, конечно, даже если у вас нет циклических ссылок, экспорт модуля может изменяться с течением времени модулем экспорта, хотя на практике это сделать относительно редко.)

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