fix(browser): avoid global-conflicting variable name fetch #199
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Here's a tiny fix that should hopefully save a lot of people a lot of headaches.
esbuild (and apparently other bundlers too) when outputting a single JS module (for esbuild, that's in
--format=esm
), everything is concatenated in a single file and de-scoped.Because jose defines a variable called
fetch
, that overrode thewindow.fetch
method, and it was causing all fetch requests in my app to fail.Took a while to figure out. I was able to find a workaround by switching esbuild to
--format=iife
, which was fine for my app, but if someone needs an output as esm, they are stuck.