You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:非默认导出的星号式重导出正确语法

非默认导出的重导出正确语法

你之前的写法多了一对不必要的括号,这就是导致错误的原因。针对不同的非默认导出重导出场景,正确的语法如下:

1. 将模块所有导出重命名为一个命名导出

这是你尝试实现的场景,正确写法不需要包裹括号:

export * as WhatEver from './whatever';

这样就能把./whatever模块里的所有导出,统一挂载到WhatEver这个命名导出上,使用的时候可以通过import { WhatEver } from '你的模块路径'来访问,再通过WhatEver.xxx调用具体的导出项。

2. 重导出单个非默认导出并自定义名称

如果只需要重导出原模块里的某个特定命名导出,比如原模块有个foo导出,你可以这样写:

export { foo as RenamedFoo } from './whatever';

3. 直接重导出所有导出(不重命名)

如果不需要重命名,只想把原模块的所有导出直接透传出去,用这个语法:

export * from './whatever';

4. 同时重导出默认和命名导出

要是需要在同一个语句里处理默认导出和命名导出的重导出,可以合并写法:

export { default as DefaultExport, foo as RenamedFoo } from './whatever';

内容的提问来源于stack exchange,提问作者Stephan Kirchhoff

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:55:12