react代码,什么时候需要配合babel进行编译?
发布于 作者:苏南大叔 来源:程序如此灵动~

在react
代码中,经常需要引入一个babel
的角色。但是,事实上,都是为了引入更高级的语法才会需要babel
的。对于react
来说,babel
并不是必须的,但是大多数情况下,都是需要的。因为在代码编程的过程中,使用一些高级语法是非常必要的。

本文测试环境:win10
,chrome@89.0.4389.90
,react@16
,create-react-app@4.0.3
,。
前端实时编译
这种实时编译,并不是react
所推荐的。因为这样的话,效率并不是很高。一般来说,需要使用babel
的情况,就是使用了高级jsx
语法的时候。比如:
需要babel
的情况:

因为使用了jsx
语法,所以需要要对对应的script
标签标记type
是text/babel
。
不需要babel
的情况:
后端预编译
后端预编译的情况,在前端代码中,是看不到script
便签里面使用type="text/babel"
的,同时,页面代码中也不会直接显示对babel.js
的引用。
但是由于这种预编译工具很多,比如webpack
、gulp
等等,配置上也会有所不同。以默认的脚手架工具create-react-app
为例,存在于webpack.config.js
文件里面的babel-loader
:
提示:这个配置是经过eject
操作后,才能看到的。

这种情况下,一般都是先编译再执行的,所以在前端页面代码里面看的话,并不会有babel
的迹象,也并不会有如下类似代码:
当然也不会存在对babel.js
、react.js
、甚至react-dom.js
的显式引用,因为这些都是打包软件去处理的。
相关链接
- https://newsn.net/say/react-start.html
- https://newsn.net/say/create-react-app-eject.html
- https://newsn.net/say/webpack-babel-react-1.html
- https://newsn.net/say/webpack-babel-react-2.html
总结
在本文中,苏南大叔描述了,在react
相关页面中,使用babel
的情况。原理上非常好懂,属于入门级别的文章知识点。更多react
相关文章,请点击下面的链接:


