Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix(sveltekit): Avoid data invalidation in wrapped client-side
load
…
… functions (#9071) This patch fixes a data invalidation issue that appeared on the client side when auto-instrumenting or manually wrapping universal `load` functions. Because our `wrapLoadWithSentry` function accessed `event.route.id`, the data returned from `load` would be invalidated on a route change. As reported in #8818 , this caused prefetched, actually still valid data to be invalidated during the navigation to the page, causing another `load` invocation. To avoid this invalidation, we change the way how we read the route.id, to first use `Object.getOwnPropertyDescriptor` which doesn't trigger the proxy that listens to accesses. This, however, will only work for `@sveltejs/kit>=1.24.0` which includes a [change](sveltejs/kit#10576) to the Kit-internal proxy. For older versions of kit, we continue to directly read from `event.route.id`, which will still cause invalidations. Not ideal but IMO the best we can do without loosing data. closes #8818
- Loading branch information