请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

觉得babel-runtime还是有问题,没有解决全局污染的问题呀

按照课程讲解,觉得babel-runtime还是有问题,没有解决全局污染的问题呀!

使用babel-runtime配置,可以使polyfill重写的方法不污染全局环境,
但相当于重命名方法,代码也是自动替换成新名称的方法。
注意,按课程中的执行结果,Promise被替换成了_Promise——带下划线

那么,如果使用方,真的自己将promise重写了,例如window.Promise = 'abc'
但使用babel-runtime后,其又被改为_Promise了!!!——这样,使用者的修改就无效了呀,还是冲突了。还不是污染了吗?

老师,按照babel-runtime的原理,始终会将代码替换成新的名称,这样,使用者的修改,也还是被替换了。则使用者白改了,这样不行吧。

此处还是不明白。觉得这样的方案没有解决污染,或者说还是带来了问题。

正在回答

1回答

babel-runtime 是用于第三方开发者编译他们的代码,编译产出之后,直接给别人使用,不污染别人。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕容6332229 #1
    好,谢谢。大概明白了,是第三方开发者在“编译产出之后,直接给别人使用”。这样的话,应该就不会再污染了~
    回复 有任何疑惑可以回复我~ 2023-11-13 10:15:46
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信