ecmascript 6 - Why does Object.assign not appear to work on Safari 8.0.7? -


we're writing app using webpack , babel-core 5.8.25.

at 1 point in time, happens:

somearray.map(item => {   const updateditem = object.assign({}, item); // silently fails here... doesn't continue code    updateditem.prop = 'something cool'; }); 

this compiled before hitting browser. works in latest version of chrome , latest version of ios safari, in safari 8.0.7, fails silently (no error thrown... doesn't go past line).

this, however, works expected (using lodash):

somearray.map(item => {   const updateditem = _.extend({}, item); // important part    updateditem.prop = 'something cool'; }); 

any idea? tried poking around internet regarding this, no avail.

object.assign works in chrome because chrome supports natively. babel-loader on own converts es6 syntax es5 syntax, not make es6 library functionality available. easiest way webpack change config like

entry: 'app.js' 

to

entry: ['babel-core/polyfill', 'app.js']  // or babel 6: entry: ['babel-polyfill', 'app.js'] 

so webpack bundle , run polyfill before executing application. babel provides /polyfill easy way load polfill, optional because not wants use it, , because there many polyfills available , 1 babel uses, core-js 1 of many.


Comments

Popular posts from this blog

resizing Telegram inline keyboard -

command line - How can a Python program background itself? -

php - "cURL error 28: Resolving timed out" on Wordpress on Azure App Service on Linux -