É possível exportar * como foo em texto datilografado
Eu posso:
import * as foo from './foo'
Mas não consigo exportar o mesmo:
export * as foo from './foo'
Isso também não parece funcionar ...:
import * as fooImport from './foo';
export const foo = fooImport;
Alguma ideia?
--- ATUALIZAÇÃO ---
O que você está tentando alcançar?
Basicamente, estou trabalhando na implementação de umngrx/store
back-end para o meu aplicativo. Quero organizar meu código assim:
app/core/
index.ts
viewer/
index.ts
viewer-actions.ts
viewer-reducer.ts
view-data/
index.ts
view-data-actions.ts
view-data-reducer.ts
E eu quero usar o meuindex.ts
arquivos para encadear todas as exportações de cada subconjunto (paradigma comum).
No entanto, eu quero manter as coisasnamespaced. Cada um dos meusxxx-reducer.ts
exxx-actions.ts
arquivos têm exportações com o mesmo nome (reducer
, ActionTypes
, Actions
, ...) então o encadeamento normal resultaria em uma colisão de nome. O que estou tentando fazer é permitir todas as exportações dexxx-actions
exxx-reducer
ser estarreexportado Comoxxx
. Isso me permitiria:
import { viewer, viewerData } from './core';
...
private viewer: Observable<viewer.Viewer>;
private viewData: Observable<viewData.ViewData>;
ngOnInit() {
this.viewer = this.store.let(viewer.getViewer());
this.viewData = this.store.let(viewData.getViewData());
}
Em vez do mais detalhado:
import * as viewer from './core/viewer';
import * as viewerData from './core/viewer-data';
...
Essa é a essência de qualquer maneira ...