Using jQuery to individually add images to the assets element, and upon load, update the ID on the relevant entity.
Cons: 1) Hides assets in javascript code 2) Requires loading individually 3) Can't reliably assign IDs to assets sharing that image
Using AssetLazyLoad - TimeoutsUsing the Asset-Lazy-Load Component to handle delays.
Pros: 1) Keeps asset descriptions in a-frame code 2) Removes the need to repeatedly write code for loading to assets and assigning IDs upon load.
Cons: Misjudging delays when assigning IDs can cause streams of warnings and temporary mismatching of assets
Using AssetLazyLoad - ChunkingUssing the Asset-Lazy-Load Component, via chunking. This is a hybrid of blocking/non-blocking loading of assets. For example, you may have a game with a cinematic opening. Rather than loading all image assets right at the start, you can prioritize assets for your cinematic opening in 'chunk: 0', and the rest of your game assets in 'chunk: 1'. This method requires that all assets in chunk 0 finish downloading before moving on.
Pros: 1) Keeps asset descriptions in a-frame code, 2) No need to juggle loading assets in javascript and assigning IDs appropriately 3) No need to guess with timeouts or delays