Почему `export * as Name из '. / Module'` не является частью TypeScript? - PullRequest
1 голос
/ 17 мая 2019

Многие формы импорта в JavaScript и TypeScript имеют параллели экспорта, что позволяет легко реэкспортировать значения и типы. Э.Г.

export { A, B } from './module'

или

export { default as Name } from './module'

Охры, по причинам, которые имеют для меня смысл. Э.Г.

export Name from './module'

не имеет смысла, так как мы не указываем, какое имя мы хотим реэкспортировать Name под.

Но почему это не работает:

export * as Name from './module'

Разве не ясно, что мы экспортируем все именованные экспорты из './module' под именем Name? Мне кажется очевидным, что наше намерение здесь состоит в том, чтобы сгруппировать все экспорты из файла в объект, который мы затем экспортируем так же, как другой экспорт с именем, аналогично тому, как это нормально *

import * as Name from './module'

, потому что ясно, что мы импортируем весь экспорт под Name именем

1 Ответ

1 голос
/ 18 мая 2019

Его нельзя использовать, потому что он не появился в спецификации модуля ES.В настоящее время он вместе с синтаксисом export name from 'mod' является предложением этапа 1.

См.

Эти функции теперь можно использовать с помощью Babel , транспортера JavaScript.

...