JSX可以运行没有Babel?



我刚刚学会从头开始建立一个React项目。我想知道为什么JSX可以在没有转译器(Babel)的情况下运行?因为之前我认为我应该使用Babel在浏览器中运行JSX。下面是我目前的设置:

  1. 反应17.0.2
  2. ReactDOM 17.0.2
  3. 包裹

App.js

import React, { useState } from "react";
import ReactDOM from "react-dom";
const App = () => {
const [name, setName] = useState("");
function changeNameHandler(e) {
setName(e.target.value);
}
return (
<div>
<input type="text" value={name} onChange={changeNameHandler} />
<h1>Your name is {name}</h1>
</div>
);
};
ReactDOM.render(React.createElement(App), document.getElementById("app"));

React不需要babel,但该库是基于使用ES6 javascript语法的概念构建的。

React应用程序可以使用旧的ES5语法和JSX来构建,这将消除对Babel的需求,但你将失去ES6的潜在好处。

因此,为了确保我们的React web应用程序向后兼容当前和旧浏览器或环境中的JavaScript版本,我们使用了Babel。

相关内容

  • 没有找到相关文章

最新更新