javascript - react+webpack 模块化应该采用CommonJS规范还是ES6规范,为什么?
PHP中文网
PHP中文网 2017-04-10 16:03:04
[JavaScript讨论组]

新项目开发,请指教。

PHP中文网
PHP中文网

认证0级讲师

全部回复(4)
迷茫

研究react的时候也考虑过这个问题,首先可以先了解下这两种模块的机制。参考这里
要考虑的点:

  1. 目前Commonjs是nodejs(浏览器环境需要模块加载器)原生支持的,而es6需要借助babeljs来实现。意味着如果要实现自动编译上线(我司没有在线上安装node_modules做法)可能需要将babel之类的node_modules提交代码仓库,大概45M。

  2. 还有要考虑下你选择的react的组件库是基于es6还是Commonjs。如果你业务使用Commonjs规范,组件使用es6,这个就没法统一了。

  3. 考虑下团队对es6的熟悉程度,关系到代码质量和维护成本。

暂时就想到这些。

ringa_lee

ES6的import和export可以随意使用,只是在webpack配置文件里面不推荐使用,因为目前有各种bug,如果你实在想用可以试试webpack-2分支

高洛峰

import/export是语言的一部分,将来扩展性可能好点

而且es6模块系统不能动态引入模块,没有require('/lib'+libName)这种写法,多少可以防止滥用。

如果有需要动态加载的依赖,就用DI吧

PHPz

我的意见是如果你的 react 组件使用 ES6 规范书写,那么就贯彻 ES6 规范,react 官方推荐使用 es6 标准进行书写。
当然如果你们如果使用的是 es5 的方法写组件,那么可以用 commonJS 来书写。

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

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