Нет необходимости использовать router-link
для внешних ссылок, поскольку его щелчок не должен обрабатываться с помощью vue-router
.
. Я бы предложил создать вычисляемое свойство (или метод), которое будет возвращатьполный URL со всеми данными.Это также удалит определенную логику из шаблона, что является хорошей практикой.
Ссылка на шаблон будет выглядеть следующим образом:
<a :href="telegramLink">Open Telegram</a>
И вычисляемое свойство для создания ссылки:
computed: {
telegramLink () {
const user = this.user
// Get route information by provided parameters
const route = this.$router.resolve({
name: 'Profile',
params: {
id: user.user_id
}
})
// Create full address url
const url = `${window.location.origin}${route.href}`
const text = `Hi I am ${user.first_name} ${user.last_name}:`
return `https://t.me/share/url?url=${url}&text=${text}`
}
}