关于tsx文件的命名:Header.class.tsx vs HeaderClass.tsx

来源:8-3 【创建state】createStore

aleke

2024-04-03

在components/header目录中,使用Header.class.tsx的时候,在index.ts文件中

export * from './Header.class'

出现编译错误:

Compiled with problems:
ERROR in ./src/pages/home/HomePage.tsx 16:38-44
export 'Header' (imported as 'Header') was not found in '../../components' (possible exports: BusinessPartners, Carousel, Footer, ProductCollection, SideMenu)Compiled with problems:
ERROR in ./src/pages/home/HomePage.tsx 16:38-44
export 'Header' (imported as 'Header') was not found in '../../components' (possible exports: BusinessPartners, Carousel, Footer, ProductCollection, SideMenu)

把文件名改为HeaderClass.tsx后,在index.ts文件中

export * from './HeaderClass'

就正常了。

不知这里关于命名是否有什么要求或规则?

写回答

1回答

阿莱克斯刘

2024-09-27

这个问题与文件名中的点号 (.) 有关。在某些情况下,文件名中的点号可能会导致编译器或模块解析器误解文件类型或路径,从而引发编译错误。

可能的原因:
1. 模块解析问题: 文件名中的点号可能会被解析器误认为是文件扩展名的一部分,从而导致路径解析错误。例如,Header.class.tsx 可能被误解为 Header 文件夹中的 class.tsx 文件。
2. 工具链限制: 某些构建工具或编译器(如 TypeScript 编译器、Webpack 等)可能对文件名中的点号处理不当,导致无法正确解析文件路径。
3. 自动导入问题: 在某些编辑器(如 VS Code)中,自动导入功能可能无法正确处理包含点号的文件名,从而导致导入路径错误

解决方法
将文件名改为不包含点号的形式(如 HeaderClass.tsx)可以避免这些解析问题,从而使编译正常进行。
0
0

React18 系统精讲 结合TS打造旅游电商平台

React18 精讲 + 结合 TS 实战 + 热门业务开发,获取必备技能

1993 学习 · 1015 问题

查看课程