Convert ionic specific HTML to browser HTML before appending it to a tag

I am trying to be as clear as I can but I am a total beginner, so if something is wrong with my post, please let me know.

I was not able to find online a way to add ionic-specific HTML to a tag on a button press.
I have a “Select Image” button that needs to duplicate itself whenever the user selects an image (so that the number of images selected is not finite.

What I tried:

The function executed upon loading an image appends a similar HTML string to the innerHTML of the previous tag. This works and I can see the image. But the HTML added to the browser is ionic-specific HTML that is not understood by the browser (not transpiled/compiled) so the functionality of the newly added tag does not work. (the function is not being executed with the new button)
I also tried grabbing the HTML of the previous tag and appending it to itself but that does not seem to add the button (or maybe it is being added on top of the other one so it’s not what I need).

What I want:

A way to dynamically add components on button press to give the user the ability to be able to load as many images as needed.

More description:

In case I wasn’t clear I used document.createElement to create an ionic-button tag and add the desired functionality using .innerHTML += and document.getElementById().appendChild the same as described here. I assume it did not work because I console logged the HTML after this and it did not contain a transpiled HTML (and the new button did not work).

Thanks in advance

So there’s likely a better solution to this that leverages the framework you’re using for this. What JS framework are you using? Angular, React, or Vue?