我有一个用ES6编写的React项目.它是使用Babel编译的,效果很好.除了一个承诺(很多!)只在IE中起作用,我已经知道 - 不支持承诺.于是我马上想到添加填充工具提供承诺的IE浏览器,但我很喜欢"抱起来,你已经写ES6,是不是编译成ES5反正?" 谁会比SO更清楚?
那么在我的项目中添加诸如es6-promise之类的polyfill是否有任何意义?如果有,我应该如何在语法上使用它?现在我只有导入但我应该以某种方式实现它?
import Promise from 'es6-promise';
这也是导致IE出现问题的承诺,也许我有一个语法错误,我没有注意到自己!:)
new SingleObjectResource(DJ_CONST.API.setLanguage) .put(null, {language_code: theLanguage}) .then( function() { window.location.reload(); } );
Danish.. 13
我有同样的情况,并且非常沮丧,因为我必须部署生产应用程序,我遇到的问题是来自fetchjs的Promises.这就是我拯救生命的方法
npm install --save es6-promise //first install as a dependency & then added in broswerify as dependency.
然后在我的主JS文件中,justed称之为
import "es6-promise/auto";
从这里开始https://github.com/stefanpenner/es6-promise#auto-polyfill
基本上,它的替代语法
require('es6-promise').polyfill();
基本上,在引擎盖下,polyfill()方法将在调用时修补全局环境(在本例中为Promise名称).
注意:我在浏览器中使用gulp.
我有同样的情况,并且非常沮丧,因为我必须部署生产应用程序,我遇到的问题是来自fetchjs的Promises.这就是我拯救生命的方法
npm install --save es6-promise //first install as a dependency & then added in broswerify as dependency.
然后在我的主JS文件中,justed称之为
import "es6-promise/auto";
从这里开始https://github.com/stefanpenner/es6-promise#auto-polyfill
基本上,它的替代语法
require('es6-promise').polyfill();
基本上,在引擎盖下,polyfill()方法将在调用时修补全局环境(在本例中为Promise名称).
注意:我在浏览器中使用gulp.