2016-06-21 4 views
0

Я запустил приложение-приложение в браузере webkit (Qtwebkit). Приложение написано на es6 и передано в es5 с babel. Я получаю сообщение об ошибке только в браузере Qtwebkit. Я смог узнать, что реализация Object.assign имеет ошибку.Ошибка обхода объекта Object.assign

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

Я понимаю, что для этой функции мне нужно использовать polyfill, но я не уверен, как это сделать правильно. Существует встроенная реализация, которая является bugy. Я знаю, как использовать polyfill для моих собственных модулей. Как заставить все внешние зависимости типа React-router и т. Д. Использовать новый полиполк? Есть ли способ установить это в процессе сборки? Я использую webpack или глоток.

+0

всегда может полиполивать по-умолчанию, чтобы определить 'Object.assign2' ... – dandavis

+0

Какая у вас полипол и вы подали ошибку? Возможно, проблема может быть исправлена ​​и быстро опубликована для решения проблемы. 'babel-polyfill' использует' core-js', если это то, что вы используете. – loganfsmyth

ответ

1

Я понял, что мы использовали старую версию QtWebKit. Обновление разрешило проблему :)

+0

Мы видели это поведение на одной машине с Qt 4.8.6 и 5.2, но обновление до 5.5.1 исправило проблему. Однако другая машина, работающая на 4.8.7, не испытывала такого поведения. Я считаю, что проблема проявляется в сочетании с core-js/shim и только в определенных условиях, которые я не смог полностью сузить. – Nathan