javascript - react项目中,使用.jsx和.js文件书写react代码时,这两者有什么差异性?
大家讲道理
大家讲道理 2017-04-10 18:07:34
[JavaScript讨论组]

我在js中用JSX的语法写,和在JSX中用JSX的语法写,然后用webpack打包编译,都能达到同样的效果,为什么还会有一个.JSX后缀的文件.
写.VUE文件时官方造成.Vue格式它能够以Vue官方特定的组件组织规则,而.JSX文件和.JS文件所能达到的效果都一样,.JSX文件存在的意义是什么呢?
最近刚玩React,想查阅相关资料并未找到,还请Reactjs大神指点迷津,谢谢。

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(5)
伊谢尔伦

答案是"没有"差异。

.JSX后缀的文件只是方便一眼看出里面有用JSX语法而已。对一些编辑程式或打包工具扩充来说,它们还得加上对.JSX后缀的文档的支援,多花了一些工夫,所以有些旧版的编辑程式是没法支持的。实际上打包出来后能执行的只有.JS文档。当然据说可以浏览中加载,没用过也不支持这种作法。所以看个人爽用了,我个人是不用.JSX后缀的文件的。

PHP中文网

用jsx写react并不是标准的js,如果用编辑器默认的编辑模式其实会报错的.
能直接写js,是因为现在babel,可以解析这个了.然后由webpack打包处理后,.js和.jsx文件被解析打包后其实是一样的,都是es5语句,所以效果并不会有差异。
但是react的jsx语句并非js语言的标准语句(如果使用编辑器默认的js解析方案其实是会报错的,现在编辑器允许你选择不同的解析方案,比如说sublime中可以用babel解析,才使得编辑器解析带有jsx语句的js时没报错),但是后缀为.jsx,一般编辑器默认就用react的方式解析了。

PHP中文网

我个人来说的话,用jsx来写是为了代码样式,jsx后缀编辑器会自动识别并使用react的代码样式,而js则没这效果。

大家讲道理

比较直观的是如果你用sublime编辑器,并且你下载了jsx syntax。那如果你文件是jsx,sublime便会自动解析出jsx,给出相应的语法高亮之类。

阿神

其他人评价的都对,没有差别,只是为了在编辑器里标示出来react语法而已

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号