重新导出命名的打字稿接口会引发错误
Re-exporting named typescript interface throws error
我对重新导出命名的打字稿元素有疑问。
我有一个类似这样的反应文件:
CustomComponent/CustomComponent.tsx:
export interface CustomComponentProps { ... }
const CustomComponent: React.FunctionComponent<CustomComponentProps> = () => {
...
}
export default CustomComponent
CustomComponent/index.ts:
import CustomComponent from './CustomComponent'
export { CustomComponentProps } from './CustomComponent'
export default CustomComponent
报错信息如下:
Attempted import error: 'CustomComponentProps' is not exported from './CustomComponent'.
或
import CustomComponent from './CustomComponent'
import { CustomComponentProps } from './CustomComponent'
export default CustomComponent
export CustomComponentProps
错误信息是:
Parsing error: Declaration or statement expected
CustomComponent/index.ts 正常工作时:
import CustomComponent from './CustomComponent'
export * from './CustomComponent'
export default CustomComponent
此错误的可能原因是什么以及如何修复它以使用类似于(或类似)失败示例的导出?导出的格式很重要,因为需要控制从 index.ts
.
导出的内容
我在写这个问题时以某种方式设法解决了我的问题,所以我分享了解决方案,因为我没有发现任何类似的问题:
import CustomComponent from './CustomComponent'
import {
CustomComponentProps as CustomComponentPropsOriginal
} from './CustomComponent'
export default CustomComponent
export interface CustomComponentProps extends CustomComponentPropsOriginal {}
您需要在重新导出之前将其转换为类型。这应该有效:
export type { CustomComponentProps } from './CustomComponent'
我对重新导出命名的打字稿元素有疑问。
我有一个类似这样的反应文件:
CustomComponent/CustomComponent.tsx:
export interface CustomComponentProps { ... }
const CustomComponent: React.FunctionComponent<CustomComponentProps> = () => {
...
}
export default CustomComponent
CustomComponent/index.ts:
import CustomComponent from './CustomComponent'
export { CustomComponentProps } from './CustomComponent'
export default CustomComponent
报错信息如下:
Attempted import error: 'CustomComponentProps' is not exported from './CustomComponent'.
或
import CustomComponent from './CustomComponent'
import { CustomComponentProps } from './CustomComponent'
export default CustomComponent
export CustomComponentProps
错误信息是:
Parsing error: Declaration or statement expected
CustomComponent/index.ts 正常工作时:
import CustomComponent from './CustomComponent'
export * from './CustomComponent'
export default CustomComponent
此错误的可能原因是什么以及如何修复它以使用类似于(或类似)失败示例的导出?导出的格式很重要,因为需要控制从 index.ts
.
我在写这个问题时以某种方式设法解决了我的问题,所以我分享了解决方案,因为我没有发现任何类似的问题:
import CustomComponent from './CustomComponent'
import {
CustomComponentProps as CustomComponentPropsOriginal
} from './CustomComponent'
export default CustomComponent
export interface CustomComponentProps extends CustomComponentPropsOriginal {}
您需要在重新导出之前将其转换为类型。这应该有效:
export type { CustomComponentProps } from './CustomComponent'