Recommendations for/against reusable components as a way to avoid code duplication

Hi,
Is there literature on best practices/cautions for creating reusable components? I’ve seen and heard references to this not being a recommended way of working with Ionic (v4) framework, at the same time, I’ve read a lot of feedback on having to duplicate html across pages otherwise. Just picking the community’s thoughts on this?
Example:

<ion-header>
<reusable-toolbar-content></reusable-toolbar-content>
</ion-header>

As opposed to:

<ion-header>
<ion-toolbar><ion-buttons>...</ion-buttons></ion-toolbar>
</ion-header>