Javascript GET result在IE11中未定义/null,直到对网页包文件进行更改。你知道为什么吗?
我在一个项目中发出多个GET请求,在IE11中除了一个特定的调用之外,所有请求都很好 该错误类似于:Javascript GET result在IE11中未定义/null,直到对网页包文件进行更改。你知道为什么吗?,javascript,webpack,get,internet-explorer-11,Javascript,Webpack,Get,Internet Explorer 11,我在一个项目中发出多个GET请求,在IE11中除了一个特定的调用之外,所有请求都很好 该错误类似于:无法获取未定义或空引用的属性X。扩展匿名函数中提到的错误 我重新调整了我的webpack.test.js文件(我意识到它已被更改),并带回了一段代码。这样做会使请求正常运行 module.exports=合并({ 条目:{ “/SiteAssets/scripts/somefile”:“./src/index.js” } }, 普通的{ 模式:"生产",, devtool:'廉价模块评估源代码映射
无法获取未定义或空引用的属性X。
扩展匿名函数中提到的错误
我重新调整了我的webpack.test.js
文件(我意识到它已被更改),并带回了一段代码。这样做会使请求正常运行
module.exports=合并({
条目:{
“/SiteAssets/scripts/somefile”:“./src/index.js”
}
},
普通的{
模式:"生产",,
devtool:'廉价模块评估源代码映射',//此行和devServer块被带回
开发服务器:{
contentBase:“./dist”,
是的,
historyApiFallback:错误
}, //
统计数据:{
颜色:假,
哈什:没错,
时间:对,
资产:没错,
chunks:没错,
对,,
模块:对,
孩子们:没错,
}
}
);
有什么想法可以解释为什么这样做吗?我一直在想原因,但我没有任何运气。如果可能的话,我很想找到答案,这样我以后就可以避免它了。我用一个更有经验的开发人员进行了一些调试,虽然从网页包文件中注释代码确实有效,但它并没有解决问题的根源 在下面的代码中,似乎存在
getRandomInt()
的时间延迟,IE11的速度太慢。通过使用两个console.log“减慢”代码速度,问题得以解决。
function getRandomInt(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; }
async function loadCommunityArticle(issueID) {
axios.get(`${_something}/news/_api/lists/GetByTitle('News')/Items?$select=ID,Created,OtherThings&orderby=ID desc&$top=50`, restHeaders)
.then(resp => {
let _data = resp.data.d.results;
if(_data && _data.length > 0) {
let rand = getRandomInt(0, _data.length - 1);
console.log(rand);
let item = _data[rand];
console.log(item);
// other code
在进行更改之后,请求在IE中没有失败。开发工具与源代码映射相关,我认为这不是影响因素。还有一个善意的提醒:注意不要混淆devtool字符串的顺序。模式是:
[inline-| hidden-|eval-][nosources-][cheap-[module-]]源代码映射
。可能devServer
选项有影响devServer.contentBase
告诉服务器从哪里提供内容,我认为不同的值会有不同的结果。您可以尝试更改devServer
options'的值,并查看它可以使用哪种组合。