I am not able to use insertAdjacentHTML to insert deleteElement "before begin" because argument of type HTMLElement is not assignable to parameter of type String.
deleteElement cannot be pass as an argument to insertAdjacentHTML because it is a HTMLElement not of Type string.
const deleteIcon = `
<clr-icon
style="color: #0076CE;">
</clr-icon>
`;
const deleteElement = document.createElement('span');
deleteElement.innerHTML = deleteIcon;
deleteElement.addEventListener('click', this.onClick.bind(this));
const controlIndicator = DOMUtils.findLastSibling(this.el.nativeElement, '.x-indicator');
if (controlIndicator) {
// Having issue where argument of type HTMLElement is not assignable to parameter of type String
controlIndicator.insertAdjacentHTML('beforebegin', deleteElement);
}
My workaround is to use prepend but that does not seems to equivalent to 'beforebegin' statement.
controlIndicator.prepend(deleteElement);
Is there a better workaround so that it is equivalent to the following statement?
controlIndicator.insertAdjacentHTML('beforebegin', deleteElement);