我正在使用 axios 进行 ajax 通信。我有 IE 的问题。IE 返回有关 Promise 的错误。IE 对 Promise 一无所知。
我正在编写 react/redux 但我在普通 JS 中尝试了 axios 并且结果相同
有人可以帮我吗?我很困惑,因为 axios 应该在 IE 8+ 上工作我在 IE 11 上尝试过(windows 10 64bit)
我的试用版是按照 axios 主页上的示例编写的
谢谢
我正在使用 axios 进行 ajax 通信。我有 IE 的问题。IE 返回有关 Promise 的错误。IE 对 Promise 一无所知。
我正在编写 react/redux 但我在普通 JS 中尝试了 axios 并且结果相同
有人可以帮我吗?我很困惑,因为 axios 应该在 IE 8+ 上工作我在 IE 11 上尝试过(windows 10 64bit)
我的试用版是按照 axios 主页上的示例编写的
谢谢
如果浏览器没有 Promise 实现,你必须包含一个 Promise polyfill。这听起来很复杂,但确实有很好的库。
axios 文档提到它: axios 依赖于要支持的原生 ES6 Promise 实现。如果你的环境不支持 ES6 Promises,你可以使用 polyfill。
如果你只使用 JS 而没有转译或捆绑,你可以试试es6-promise
或者如果你使用 babel,你可以使用它的 polyfill
Android 4.x 和 axios 和 Promise
在 Android 4.XI 中也有类似的问题。我通过在 webpack 配置中使用 es6-promise 来解决它:
承诺:'es6-promise'
plugins: [
//tells webpack where to store data about your bundles.
new BundleTracker({filename: './webpack-stats.json'}),
//makes jQuery available in every module
new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery',
'window.jQuery': 'jquery',
Promise: 'es6-promise'
}),
// Configure path for served CSS files ("desktop_css" will be served as /dist/desktop_css.css)
new ExtractTextPlugin('[name].css'),
],
有关更多信息,请查看:
https://github.com/axios/axios/issues/188
是的,直到 4.4.4 才为 Android 引入 Promise
http://caniuse.com/#feat=promises
“承诺”未定义