Сергей К.

Добрый вечер! Импортирую функции из numbers2.js вот таким образом:

import multi, * as func from './numbers2';

Подскажите, почему использовать свойства объекта func можно, но импортировать их нельзя?

console.log(func.sum2(5,5)); // 10
export { func.sum2 as sum }; // Error
1 0

Александр О.

Здравствуйте! Таковы правила экспорта

Можно выделить два вида экспорта: экспорт ("обычный" экспорт) и экспорт по умолчанию (default export).

Обычный экспорт (export) ещё называют именованным экспортом (named export). И для его осуществления надо использовать только особую разновидность выражений - идентификаторы (имена). Простые (прочие) выражения здесь не подходят (выражения можно использовать при экспорте по умолчанию). func.sum2 - это выражение, не являющееся идентификатором, для приведённого вами способа экспорта оно вызовет ошибку. Можно сделать так:

const sum = func.sum2;
export { sum };

или так

export const sum = func.sum2;
1

Похожие вопросы

Илья Кононенко около 19 часов назад →

Наша песня хороша - начинай с начала!!! ))) Что сделать чтобы VSCode не ругался на импорт! Хочу прям там де...

Almaz Idiyatshin 08 мая 2020 →

Здравствуйте! Подскажите, пожалуйста, на что ругается линтер? Смотрел на сайте eslint https://eslint.org/do...

Elena Solovyeva 06 апреля 2020 →

Добрый день, подскажите пожалуйста, для решения данной задачи нужно сначала посмотреть код в модулях number...

Елена Радькова 25 марта 2020 →

Доюрый день! Никак не могу понять, что делаю не так. Ошиба: TypeError: (0 , math.default) is not a function...

Denis 10 марта 2020 →

Добрый день! https://ru.hexlet.io/code_reviews/228326 Подскажите, решение считается верным, но не будет ли ...

Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Javascript, PHP, Python и Java.

Хекслет

Подробнее о том, почему наше обучение работает →