Es 6-promiseとes 6-promise.autoの違いと使用

1658 ワード

es6-promise
demo:
    
        window.Promise = 32;
    
    
    
        console.log(Promise); // 32,       polyfill
    

demo:
    
        window.Promise = 32;
    
    
    
    //        window.Promise = ES6Promise.Promise;
    //CommonJS    window.Promise = require('es6-promise').Promise;
window.Promise = ES6Promise.Promise;//    ES6Promise.polyfill();        ,ES6Promise.polyfill()       Promise  ;
console.log(Promise);// ƒ Promise$2(resolver) {}, okay 
    

es6-promise.auto
demo:
Es 6-promise.autoはPromiseが存在するか否かを検出し、オリジナルのPromiseが存在する場合は実行しない.そうでなければpolyfillが適用されます.
適用:
    
        window.Promise = 32;
    
    
    
        console.log(Promise);//ƒ Promise$3(resolver) {} ,    
    

適用しない:
    
        // window.Promise = 32;
    
    
    
        console.log(Promise); // ƒ Promise() { [native code] },     
    

まとめ
つまり、es 6-promiseはライブラリであり、自動polyfillはありません.自動polyfillを使用するにはes 6-promise.autoを使用します.