title: nuxtjs issue with IE11 compatibility_ object assign
body: <p>I am suffered by IE compatibility. (my vue version is 3.1.0, nuxt is 2.3.4)</p>
  
  <p>It keeps error with <code>Object.assign</code>. Here is the list what I have tried.</p>
  
  <ul>
  <li><p>babel-preset-vue-app(<a href="https://www.npmjs.com/package/babel-preset-vue-app" rel="nofollow noreferrer">https://www.npmjs.com/package/babel-preset-vue-app</a>). Heard that it does not support vue2.X. I followed the description on <a href="https://cmty.app/nuxt/nuxt.js/issues/c73" rel="nofollow noreferrer">this post</a>. It gets an error while building source. </p></li>
  <li><p>Adding babel-polyfill in <code>nuxt.config.js</code>. It does not error, but still I got Object.assign error on the page.</p></li>
  <li><p>Install <code>babel/plugin-transform-object-assign</code>. It also does not make any error in build process, but got Object assign thing in the page.</p></li>
  </ul>
  
  <p>Is there any option I can try to feet IE11 compatibility?</p>
  
  <p>Here is my current <code>.babelrc</code> and <code>nuxt.config.js</code>.</p>
  
  <p>.babelrc</p>
  
  <pre><code>{
      "presets": [
          [
              "env",
              {
                  "modules": false
              }
          ],
          [ "vue-app",
              {
                  "useBuiltIns": true,
                  "targets": {
                      "ie": 9,
                      "uglify": true
                  }
              }
          ]
      ],
      "plugins": [
          "@babel/plugin-transform-object-assign",
          "transform-vue-jsx",
          [
              "module-resolver",
              {
                  "root": [
                      "./src"
                  ],
                  "alias": {
                      "~sbdc": "./src/sbdc"
                  }
              }
          ]
      ]
  }
  </code></pre>
  
  <p>build option in nuxt.config.js</p>
  
  <pre><code>build: {
      babel: {
          presets: [
              ['vue-app', {
                  useBuiltIns: true,
                  targets: { ie: 9, uglify: true }
              }
              ]
          ]
      },
      optimization: {
          splitChunks: {
              chunks: 'all',                  
              maxInitialRequests: Infinity,       
              minSize: 0,                     
              cacheGroups: {              
                vendor: {
                    test: /[\\/]node_modules[\\/](babel-polyfill|moment|lodash|axios|get-size|jquery|js-cookie|jwt-decode|numeral|vuetify)[\\/]/,
                    name: 'utilityVendor'
                  }
              }
          }
      },
      output: {
          publicPath: serviceConfig.pwa_publicPath || false
      },
      extractCSS: true,
      plugins: [
          new webpack.ProvidePlugin( {
              $: 'jquery',
              jQuery: 'jquery',
              'window.jQuery': 'jquery',
          } )
      ]
  }
  </code></pre>
  
  <p>Thanks for sharing you solutions!</p>
  
  <p>======= Edited in 0114 =============</p>
  
  <p>Etra information #1.
  When I look at the error on ie11 browser, it automatically transform code like below</p>
  
  <pre><code>return {layout:"popup",data:[{resultBody:Object.assign(Object.create(null), ... sorry, sensitive data
  </code></pre>
  
  <p>while the original code is...</p>
  
  <pre><code>asyncData: async function ({req}) {
      return {
          resultBody: req.body,
      };
  },
  </code></pre>
  
  <p><code>req.body</code> is supported by <code>body-parser</code>.</p>