Экспорт класса и функции в одном файле - PullRequest
0 голосов
/ 18 января 2019

У меня есть класс в файле JS, например:

class A {

  contructor(){}

  //logic
}

и в том же файле у меня любимые функции:

async function b(){}

и в конце я экспортирую класс:

module.exports = A;

Можно ли экспортировать также функцию "b"?

1 Ответ

0 голосов
/ 18 января 2019

вы можете сделать следующее:

class A {}

export async function b() {}

export default A

развивавший:

Вы можете иметь несколько именованных экспортов для модуля, но только один экспорт по умолчанию. Большинство людей сказали бы, что хорошо иметь экспорт по умолчанию для файла, а затем экспортировать любые другие модули как именованные экспорты.

Для вашей проблемы вы можете видеть выше, что вы можете иметь экспорт по умолчанию A, а затем также использовать b в качестве именованного экспорта. Затем его можно импортировать в другое место, например:

import A, { b } from '../foo';

Вы, вероятно, увидите этот стиль с большинством OSS, например:

import React, { Component, Fragment } from 'react';

Импорт вне {} является экспортом по умолчанию, а импорт внутри {} является именованным экспортом.

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