前端vue, react等库都用到了babel,为啥后台用的很少?
前端vue, react等库都用到了babel,为啥后台用的很少?
来自 KoaHubjs
11 回复
@yakczh 你这题目意思都没搞懂。。。。。前台用babel那是没办法了,想用es6但是浏览器的主动权不在我们这,所以必须babel转成对方能用的,后台不用node是因为后台主动权在我们这,只要是它支持的我们都能用,而且超前很多,所以不用babel很正常,再一个babel现在是一个工具集合,不单单可以转译es6,用vue实际上你也只是用它的一个插件babel-preset-xxx而已,react的话你要转译jsx还需要babel-preset-react
我觉得,
- 后端debug需求大,不如源码debug方便。后端版本可控,可以升级node版本来使用新特性
- 前端客户端环境复杂,使用babel可以将代码编译成大多数客户端可以运行的版本
过犹不及,现在的 LTS 是 6.x, 绝大部分 ES6 的特性都已经支持了。 编译过的代码,是黑盒,不方便调试,后端代码追求的是稳定性。我们之前就遇过 babel 把 Error 对象原型改为 Object,导致拿不到 stack,分析线上问题效率慢。