javascript - 使用 React 和 .tsx 在项目中制作所有 TypeScript 的缺点
问题描述
我正在编写 TypeScript + React (JSX) 代码,但有时我不小心编写了带有扩展名的 JSX,.ts
并遇到了麻烦。当然,如果将扩展名设置为.tsx
,则解决方案将得到解决,但是如果所有文件都.tsx
从头设置为,而不管有无JSX,有什么不便吗?
如果所有文件都是用.tsx,
“
.ts
与 MPEG-2 TS 存在扩展冲突,但.tsx
没有。”“即使以后需要 JSX,也可以照原样写,不用改文件名。”
诸如可以预期的优点。
我知道
无法转换格式。
但除此之外,我希望你能告诉我是否有类似的事情。
文件
.tsx
有这样的不便。
我检查了什么
允许 JSX 不使用
.tsx
扩展- 相反,建议您可以在 .ts 中编写 JSX(已关闭)有两种类型的强制转换符号:
value as type
和<type> value
,后者不能写入.tsx
文件
环境
- 打字稿 3.7.5
- 反应 16.12
- Webpack 4.41.6
ts-loader
用于加载到 Webpack(类型检查被抛出到fork-ts-checker-webpack-plugin
) - 编辑器使用 Visual Studio Code
解决方案
在任何地方使用都没有明显的缺点.tsx
。
在文件中唯一不能做的.tsx
就是语法上的细微差别。
你不能<foo>
用来投射。
例如,而不是:
<any>foo
你必须写:
foo as any
如果您在文件中使用第一种语法,.tsx
它将很明显且易于纠正。
推荐阅读
- r - 为什么 tidyverse 的 mutate/fct_relevel 改变的数据不仅仅是 x-bin 位置?
- html - 如果点击html中的复选框,点击按钮,需要跳转到下一页,但是没有
- maven - 将工件上传到 Artifactory 时,管道写入失败
- d3.js - 在 D3 V5 中在轴刻度上设置标签
- sparql - sparql 查询使用数据值获取特定类的所有个体
- python - 在 Visual Studio Code 中使用 pandas 的问题
- autohotkey - Autohotkey / AHK - 字符串作为不带“”的函数参数
- html - Page-Break-Before:在 Edge 84 浏览器中无法正常工作
- r - 使用所有列 NA 过滤 data.frame 但在某些为 NA 时保留
- c# - 在 C# 中使用 oracle 客户端选择非英语字符