首页 > 解决方案 > 在服务器或浏览器上将 JSX 转换为 JS?

问题描述

JSX 非常新,但阅读它似乎服务器端和客户端(在浏览器中)转换都是可能的选择。

JSX 是否旨在发送到客户端并通常在浏览器中进行转换。这是否意味着现代版本的 Chrome、Firefox、Opera 等都理解 JSX 语法?

还是服务器端转译更普遍?您是否只希望在开发期间进行客户端转译,例如出于某种原因避免安装npm ?

标签: javascriptreactjsjsxtranspiler

解决方案


JSX 是否旨在发送到客户端并通常在浏览器中进行转译。

不。

这是否意味着现代版本的 Chrome、Firefox、Opera 等都理解 JSX 语法?

不。

请参阅React 简介

在您的项目中尝试 JSX 的最快方法是将此标记添加到您的页面:

<script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>

现在,您可以通过向其添加属性来在任何<script>标签中使用 JSX 。type="text/babel"这是一个带有 JSX 的示例 HTML 文件,您可以下载并使用它。

这需要您提供一个转译器(用 JS 编写)。

还是服务器端转译更普遍?您是否只希望在开发期间进行客户端转译,例如出于某种原因避免安装 npm?

再次,请参阅上面的链接:

这种方法非常适合学习和创建简单的演示。但是,它会使您的网站变慢并且不适合生产。当您准备好继续前进时,请删除此新<script>标签和type="text/babel"您添加的属性。相反,在下一节中,您将设置一个 JSX 预处理器来<script>自动转换所有标签。


浏览器端转译只适用于“学习和创建简单的demo”。


推荐阅读