Если вас интересуют ТОЛЬКО относительные пути, такие как: /dashboard
и /about
т. Д., См. Другие ответы.
Если вы хотите открыть абсолютный путь, например: https://www.google.com
к новой вкладке, вы должны знать, что Vue Router НЕ предназначен для их обработки.
Однако, похоже, они рассматривают это как просьбу о функции. # 1280 . Но пока они этого не сделают,
Вот небольшой трюк, который вы можете сделать для обработки внешних ссылок с помощью vue-router.
- Зайдите в конфигурацию роутера (возможно
router.js
) и добавьте этот код:
Router.prototype.absUrl = function(url, newTab = true) {
const link = document.createElement('a')
link.href = url
link.target = newTab ? '_blank' : ''
if (newTab) link.rel = 'noopener noreferrer'
link.click()
}
Теперь, когда мы имеем дело с абсолютными URL-адресами, у нас есть решение. Например, чтобы открыть Google на новой вкладке
this.$router.absUrl('https://www.google.com)
Помните, что всякий раз, когда мы открываем другую страницу на новой вкладке, мы ДОЛЖНЫ использовать noopener noreferrer
.
Подробнее здесь
или здесь