关于babel的presets中targets chrome: "67"

来源:3-12 使用 Babel 处理 ES6 语法(2)

慕码人6365497

2019-03-13

targets: {
edge: “17”,
firefox: “60”,
chrome: “67”,
safari: “11.1”,
},
不能理解这种配置的使用场景,先后顺序应该是先打包生成文件然后把打包后的文件上线,.最后用户使用各自的浏览器访问,这个时候访问的一定是已经生成好的文件.
所以开发人员在打包的时候,肯定没有用户访问啊,那webpack根据当前开发人员用的浏览器判断是否编译成es5吗?
使用babel本身就是为了应付不同的用户使用不同的浏览器都能编译,如果预先知道了用户一定使用chrome高版本的浏览器,那根本就不会使用babel吧…webpack做这种配置有啥意义呢?

写回答

1回答

Dell

2019-03-13

你估计没有理解正确,他的意思是,我打包的时候,以这个配置为准,进行全兼容,比如说你配置了edge,那么我打包的时候,类似promise这种东西就不帮你实现了,因为你这个版本浏览器里肯定有。所以你打开代码,在更低版本浏览器上,就不一定能运行了。 这个版本的作用在于告诉webpack,打包出的代码,你想能兼容哪些浏览器。

2
2
Dell
回复
慕码人6365497
是的,就是这个意思,底层他会调用can i use这个网站的接口
2019-03-14
共2条回复

从基础到实战 手把手带你掌握新版Webpack4.0

知识点+项目实例+原理讲解 全方位解析Webpack4新版本

3627 学习 · 1291 问题

查看课程