這是我的意思。是否有可能重寫本機提取api使用所需的Promise庫而不是本地瀏覽器Promise?
如果瀏覽器本身支持fetch api(例如Chrome),則它使用本地瀏覽器Promise
。
如果我使用另一個Promise庫(例如bluebird),本機fetch
仍然沒有使用它 - 它使用本地Promise
實現。
有沒有辦法來覆蓋那個?
問題例如:
window.Promise = function() { return null; };
fetch('/api')
.then(function (res) {
console.log('fetch result!', res); // still works because it uses native Promise
});
爲什麼我必須說,你可能想知道?我希望使用global rejection events其中bluebird
庫支持和原生Promise沒有。
瀏覽器不關心你是否使用承諾庫,它只知道它自己的承諾。它不會自動更改爲不同的實現。 – Reda