First of all, you need to think about users. And users entering your site want one thing - to see the content, as quickly as possible. They do not want to look at the white screen.
Therefore, the answer to your question will be the realization that you are more expensive - traffic or users.
If you only have a link to .js in index.html , then such a file will load faster and not surprisingly, the size has been reduced exactly by .html . But the dom will be generated more slowly and until the entire file is uploaded, until the user can see the content, there will be a white screen.
An alternative to this is a full-fledged .html , the content of which the user will see as soon as he loads the dom tree. And the scripts need to be placed at the very bottom of the body in order to start loading after forming the display. But in such cases, there will be no instant response of the application, as the scripts are still loaded, and after loading they will be executed.
But personally, I tend to the second option, if we consider the standard web application.