Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I export * as namespace in Babel?

I am working on code that is a mixture of JS and TS, using TypeScript 3.8. I wrote the following line:

export * as Easing from './easing';

Which should be fair game in TypeScript 3.8. However, I am compiling using Webpack, and I am not using ts-loader, only babel-loader with the TypeScript preset, and it seems like Babel does not support this syntax. I'm getting this error:

ERROR in ./src/index.ts
Module build failed (from ./node_modules/babel-loader/lib/index.js):
SyntaxError: /home/laptou/projects/my-project/src/index.ts: Unexpected export specifier type
 30 |     default as Clock, addUpdateListener, after, chain, clock, infinite, tween
 31 | } from './clock';
 32 | export * as Easing from './easing';
    |        ^^^^^^^^^^^
 33 | export type { Tween, TweenOptions, TweenStatus } from './tween';
 34 | export { default as InterpolateTween } from './tween/interpolate'

How can I fix this?

like image 301
laptou Avatar asked Sep 06 '25 03:09

laptou


1 Answers

I've asked this question before here: namespace export from index.js

import * as Easing from './easing';
export { Easing }
like image 50
Adam Avatar answered Sep 07 '25 23:09

Adam