js,jsx,ts和tsx在用法上的区别

JS 和 JSX

在文件后缀中

.js 表示这是一个 JavaScript 文件

.jsx 表示这是一个 JavaScript XML 文件

JavaScript 是一种直译式脚本语言

JavaScript XML 是React组件内部构建标签的类XML语法。可以理解为React提供的语法糖,可以让编译器更方便快速的选择编译方式。

JavaScript 是能够被浏览器直接识别的,JavaScript XML需要经过编译器(webpack等)转换成 JavaScript

但在正常使用上,两者没有什么区别, .js 的语法和 .jsx 的后缀可以互换,语法上也完全兼容

Facebook的团队建议(也就是React的创造者),统一使用 .js 即可,无需特意区分。

TS 和 TSX

  • TS文件是使用TypeScript编写的标准JavaScript文件,可以包含变量声明、函数定义等内容;
  • TSX文件是TypeScript中的一种格式,它允许我们将JSX片段嵌入到TypeScript代码中,从而提供更好地对React组件的类型检查。
  • 使用TSX文件时,我们需要先定义特定的接口或类型,然后使用这些接口或类型来表示React组件props和状态的类型。

从使用的角度上来说

.ts 的文件,内容上不支持 <div> 这种HTML语法,会报错的,而且VS Code这类代码编辑器也不会提供相关代码提示和补全的功能。

总结:使用上 js=jsx,tsx=ts(不支持html语法(如<div>))+jsx

如果你只为JavaScript文件添加某些类型信息,则可以使用TS文件。

如果你要写一个React应用程序并想要利用TypeScript的类型检查,那么应该选择TSX。

猜你喜欢

转载自blog.csdn.net/qq_28838891/article/details/130853694
今日推荐