2016-06-21 43 views
0

我在webkit(Qtwebkit)浏览器中运行react-app。应用程序使用es6编写,并通过babel转换成es5。我只在Qtwebkit浏览器中发生错误。我能够发现Object.assign实现有一个错误。Object.assign bug解决方法

const x = Object.assign({}, {a: 1, b: 2}); 
//produces {"b":2} 

据我所知,我需要使用polyfill这个功能,但我不知道如何正确地做到这一点。有一个本地实现是bugy。我知道如何使用polyfill作为我自己的模块。我如何强制React-router等所有外部依赖项使用新的polyfill?有没有办法在构建过程中设置它?我使用webpack或gulp。

+0

总是可以修改polyfill来定义'Object.assign2' ... – dandavis

+0

什么是你的polyfill并且你提交了一个bug?可能只是在那里解决问题并迅速发布以解决问题。如果你使用的是'babel-polyfill',则使用'core-js'。 – loganfsmyth

回答

1

我意识到我们使用旧版本的QtWebKit。升级解决了这个问题:)

+0

我们在一台运行Qt 4.8.6和5.2的机器上看到了这种行为,但升级到5.5.1可以解决问题。但是,另一台运行4.8.7的机器没有遇到这种情况。我认为这个问题与core-js/shim一起出现,只有在某些条件下,我无法完全缩小范围。 – Nathan