Вам действительно следует отображать ссылки с помощью <router-link>
, если вы хотите, чтобы клики обрабатывались vue-router, а не путем перезагрузки страницы.
В противном случае вы можете перехватитьщелкает (через делегирование) и перемещается к новому маршруту вручную:
<div @click="onClick">
<!-- Render the HTML in here -->
<a href="/foo/bar">Link</a>
</div>
onClick(e) {
if (e.target.tagName === 'A') {
e.preventDefault();
// Manually navigate to the route
this.$router.push(e.target.href);
}
}