小编典典

JSX代表什么?

reactjs

JSX代表什么?

我指的是JSX,它被定义为ECMAScript的类似于XML的语法扩展,随着ReactJS的日益流行,它已变得非常流行。


阅读 321

收藏
2020-07-22

共1个答案

小编典典

JSX代表 _ Ĵ AVA 小号 CRIPT X
ML_。使用React,它是元素和组件的类似XML的代码的扩展。根据React文档,正如您提到的:

JSX是ECMAScript的类似于XML的语法扩展,没有任何定义的语义

从上面的引用中,您可以看到JSX没有定义的语义,它只是对JavaScript的扩展,可以简化和优雅地编写类似XML的代码,然后将JSX转换为带有的纯JavaScript函数调用React.createElement。根据React教程:

JSX是将XML语法添加到JavaScript的预处理步骤。您可以在没有JSX的情况下使用React,但是JSX使React更加优雅。

就像XML一样,JSX标记具有标记名称,属性和子代。如果属性值用引号引起来,则该值为字符串。否则,将值括在大括号中,并且该值是随附的JavaScript表达式。

JSX中的任何代码都将转换为纯JavaScript / ECMAScript。考虑一个名为的组件Login。现在我们用JSX渲染它:

<Login foo={...} bar={...} />

如您所见,JSX仅允许您使用类似于XML的标记语法,以表示React中的组件和元素。它被转换为纯JavaScript:

React.createElement(Login, { foo: ..., bar: ... });

您可以在docs上阅读更多内容。

2020-07-22