GET 结果在 IE11 中是 undefined/null,直到对 webpack 文件进行了更改。任何想法为什么?

GET result was undefined/null in IE11, until a change was made to webpack file. Any ideas why?

我在一个项目中发出多个 GET 请求,所有这些请求在 IE11 中都很好 除了 特定调用。

错误类似于:Unable to get property X of undefined or null reference. 扩展提到匿名函数的错误。

我重新调整了我的 webpack.test.js 文件(我意识到它已被更改)并带回了一段代码。这样做会导致请求 运行 正确。

module.exports = merge({
    entry: {
      '/SiteAssets/scripts/somefile': './src/index.js'
    }
  },
  common, {
   mode: 'production',
   devtool: 'cheap-module-eval-source-map', // This line and the devServer block were brought back
   devServer: {
     contentBase: './dist',
     compress: true,
     historyApiFallback: false
   },                                      // 
   stats: {
      colors: false,
      hash: true,
      timings: true,
      assets: true,
      chunks: true,
      chunkModules: true,
      modules: true,
      children: true,
   }
  }
);

关于为什么这有效的任何想法?我一直在努力寻找原因,但我没有任何运气。我很想知道,这样我以后就可以避免它了,如果可能的话。

我和一位更有经验的开发人员进行了一些调试,虽然注释掉 webpack 文件中的代码确实起作用了,但它并没有解决问题的根源。

在下面的代码中,getRandomInt() 似乎存在时间延迟,导致 IE11 速度太慢。通过使用两个 console.logs.

“减慢”代码解决了这个问题
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 中的请求从未失败过。