Static Resources with async Functions Behave Inconsistently
When you use lightning/platformResourceLoader
in Lightning web components (LWC) to access static resources and Lightning Web Security (LWS) is enabled, it’s possible that some APIs in those static resources exhibit inconsistent behavior among various browsers.
When LWS is enabled, JavaScript async
functions that are used from a static resource work in Chromium-based browsers, but don't work in Firefox currently. The issue is a bug in Firefox.
You can get around this issue in Firefox by pre-compiling the code that’s in the static resource so the async
function is replaced by equivalent code.
This Babel plugin is recommended if you’re having issues with async
functions in static resources: https://babeljs.io/docs/en/babel-plugin-transform-async-to-generator
Alternatively, you can refactor to use another approach, such as JavaScript promises.
See Also