【发布时间】:2019-02-15 09:40:29
【问题描述】:
我正在尝试使用 React 实现我的前端。通常,当我创建一个组件时,我会创建一个名称为 Header 的文件夹,并在该文件夹中创建 index.js 以便我可以使用文件夹名称轻松导入它,因为 index.js 会在文件夹中自动调用。
import Header from "components/Header";
我最近开始使用Material-UI,并发现他们在自己的框架中制作组件时有所不同。他们创建了一个同名的文件夹Header,但他们将Header.jsx 放在文件夹中。他们使用jsx 扩展是否有特定原因?我以为我的方式是常规的,但是由于Google做的框架,我认为可能有一个合理的理由。
【问题讨论】:
-
jsx扩展名是指包含一些jsx代码的文件,例如<Header/>,实际上是React.createElement的快捷方式。jsx扩展名不是强制性的,如果您的构建系统正确配置为使用正确的babel plugins编译.js文件,您可以在.js文件中编写jsx代码。我认为拥有.jsx是一个好点,因为您(和您的 IDE)知道这些文件包含 JSX 代码
标签: reactjs