That's a very common question in the Vuejs Berlin Meetup (that I'm organizing).
There's no definite answer to that of course. I usually separate something into its own component as soon as it works on its own but not if it's just a couple of lines that are definitely specific to the current component or page.
Don't treat specialised components. If there's something that you must probably don't reuse or would need to rewrite to make reusable you still can put it into a component if it is helping with readability
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.