我正在使用Webpack和Babel实现React JS。但是,我无法让Fetch与IE 11一起使用。
我的.babelrc文件中有以下内容:
{
"presets" : ["env", "stage-0", "react"]
}
以及我的webpack.config.js文件中的以下内容:
var webpack = require('webpack');
var path = require('path');
var DIST_DIR = path.resolve(__dirname, 'dist');
var SRC_DIR = path.resolve(__dirname, 'src');
var config = {
entry: {
bundle: [
'babel-polyfill',
SRC_DIR + '/app/index.js',
]
},
output: {
path: DIST_DIR + '/public/js',
filename: 'bundle.js'
},
module: {
loaders: [
{
test: /\.jsx?$/,
include: SRC_DIR,
loader: 'babel-loader'
}
]
}
};
module.exports = config;
根据我的理解,实现babel-preset-env,stage-0和babel-polyfill应该允许将Fetch API转换为旧浏览器可以理解的东西。还有其他我不想要的东西吗?
答案 0 :(得分:2)
fetch
不是EcmaScript的一部分,但它是网络平台的一部分。 Babel只是一个编译器来编写最新的Javascript。如果您想在旧浏览器中使用fetch
,则需要使用this one
获取API:read more
答案 1 :(得分:0)
fetch
必须由您使用的浏览器提供,并且不包含在babel-polyfill
中。如果您的浏览器不支持fetch
,则可以使用XMLHttpRequest
或使用isomorphic-fetch之类的填充。