Как я могу псевдоним импорта по умолчанию в Javascript?

386

Используя модули ES6, я знаю, что могу псевдоним именованного импорта

import { foo as bar } from 'my-module';

И я знаю, что могу импортировать импорт по умолчанию

import defaultMember from 'my-module';

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

import defaultMember as alias from 'my-module';

но это приводит к ошибке синтаксического анализа.

Как я могу (или я могу?) Псевдоним импорта по умолчанию?

sfletche
источник

Ответы:

730

defaultMemberуже является псевдонимом - это не должно быть имя экспортируемой функции / вещи. Просто делать

import alias from 'my-module';

В качестве альтернативы вы можете сделать

import {default as alias} from 'my-module';

но это довольно эзотерично.

Берги
источник
12
Псевдоним сам по себе эзотеричен! Импорт именованного экспорта и значения по умолчанию удобен при тестировании компонентов import WrappedComponent, { Component } from 'my-module';
приставки
некоторые очень строгие правила печати не согласны и требуют, чтобы вы сохранили имя ввода по умолчанию в качестве имени файла
phil294
1
@Blauhirn Это для старых IDE, которые не могут следовать ссылкам и нуждаются в глобальном поиске и замене для своих инструментов рефакторинга? Смешной.
Берги
@Bergi no, это правило tslint «import-name», используемое, например, набором правил airbnb tslint и поэтому довольно распространенное. Эти правила существуют для поощрения последовательного, безошибочного и удобочитаемого кода
phil294
2
Документы MDN должны отражать эти обновления документов: developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
nardecky