Подтвердить что ты не робот

ES6, как вы можете экспортировать импортированный модуль в одну строку?

Я бы хотел сделать следующее, но с одной строкой, если это возможно:

  • import Module from './Module/Module;
  • export Module;

Я пробовал следующее, но он не работает:

  • export Module from './Module/Module;
4b9b3361

Ответ 1

export {default as Module} from './Module/Module';

- это стандартный способ ES6, если вам не нужно, чтобы Module был доступен внутри модуля, выполняющего экспорт.

export Module from './Module/Module';

- это предложенный ESnext способ сделать это, но он работает, только если вы включили его в Babel на данный момент.

Ответ 2

Я не знаю, почему, но только это работает для меня:

index.jsx:

import Component from './Component';
import Component2 from './Component2';
import Component3 from './Component3';
import Component4 from './Component4';

export {Component, Component2, Component3, Component4};

Я импортирую экспорт следующим образом:

import {Component, Component2, Component3, Component4} from '../componets/index';

Ответ 3

Обратите внимание, что вы также можете реэкспортировать все из модуля:

export * from './Module/Module';

Ответ 4

Для компонентов React Native этот синтаксис работает для меня:

export {default} from 'react-native-swiper';

Ответ 5

Итак, я нашел, что это очень хорошо работает для немедленной экспортной функции наличия index.js в корне каталога components для упрощения ссылок:

import Component from './Component/Component'
import ComponentTwo from './ComponentTwo/ComponentTwo'

module.exports = {
  Component,
  ComponentTwo
};

Вам нужно использовать module.exports.

Ответ 6

Итак, вот ответ!

module.exports.your_module = require("your_module");

в моем случае мне нужно было объединить все мои реагирующие компоненты в библиотеку. работал нормально, а также упаковывать его в виде библиотеки в веб-пакете.