code: function fixPrepatch(to, ___) {
    var _this3 = this;
  
    if (this._hashChanged) return;
  
    __WEBPACK_IMPORTED_MODULE_6_vue__["default"].nextTick(function () {
      var instances = Object(__WEBPACK_IMPORTED_MODULE_9__utils__["g" /* getMatchedComponentsInstances */])(to);
  
      _lastComponentsFiles = instances.map(function (instance, i) {
        if (!instance) return '';
  
        if (_lastPaths[i] === instance.constructor._path && typeof instance.constructor.options.data === 'function') {
          var newData = instance.constructor.options.data.call(instance);
          for (var key in newData) {
            __WEBPACK_IMPORTED_MODULE_6_vue__["default"].set(instance.$data, key, newData[key]);
          }
        }
  
        return instance.constructor.options.__file;
      });
  
      // Hide error component if no error
      if (_this3._hadError && _this3._dateLastError === _this3.$options._nuxt.dateErr) {
        _this3.error();
      }
  
      // Set layout
      var layout = _this3.$options._nuxt.err ? __WEBPACK_IMPORTED_MODULE_8__index__["a" /* NuxtError */].layout : to.matched[0].components.default.options.layout;
      if (typeof layout === 'function') {
        layout = layout(_this3._context);
      }
      _this3.setLayout(layout);
  
      // Hot reloading
      setTimeout(function () {
        return hotReloadAPI(_this3);
      }, 100);
    });
  }
docs: When navigating on a different route but the same component is used, Vue.js Will not update the instance data, so we have to update $data ourselves