Using React / Angular / Vue for part of the addon page only

I need to add some complex UI in my existing addon and I could really use some framework for that.
However, since the addon is a New tab replacement, I really don’t want to load the whole framework when the page is loaded (and slow it down even more - especially when running on Android). Instead dynamically load it only when needed (using import('./vue')).

I’ve tried to use VueJS but as it turns out, it’s not that easy due to CSP in Firefox and Chrome:

Maybe there is a better way using React or Angular? Or should I stick with Vue?

Also will there be any issue using these frameworks when submitting for AMO? Is there some recent list of supported libraries? When I tried web-ext lint I got warning in the vue.js file about “Unsafe assignment to innerHTML”.