Для открытия ссылки в новой вкладке по клику на колесико в Vue.js с использованием Vue Router необходимо использовать инструменты, предоставляемые самим Vue Router в сочетании с стандартными средствами HTML и JavaScript.
Ниже приведен подробный шаг за шагом руководство о том, как достичь этого:
Шаг 1: Установка и настройка Vue Router
Если у вас уже установлен Vue.js и вы используете Vue CLI для вашего проекта, вы можете установить Vue Router с помощью следующей команды:
npm install vue-router
Если вы не используете Vue CLI, вы должны подключить Vue Router как стороннюю библиотеку, а затем добавить его в свое приложение:
<script src="https://unpkg.com/vue-router@next"></script>
После установки Vue Router вам необходимо настроить его и создать ваш экземпляр маршрутизатора. Вот пример этого:
import { createApp } from 'vue' import { createRouter, createWebHistory } from 'vue-router' const router = createRouter({ history: createWebHistory(), routes: [ // Здесь определите ваши маршруты ] }) const app = createApp(App) app.use(router) app.mount('#app')
Шаг 2: Создание ссылки с колесиком
Теперь, когда у вас есть настроенный экземпляр маршрутизатора, вы можете создать ссылку, которая будет открываться в новой вкладке при клике на колесико. Вот пример кода:
<router-link :to="{ path: '/my-link' }" v-slot="{ href, navigate }"> <a target="_blank" rel="noopener"> Моя ссылка с колесиком </a> </router-link>
Здесь мы используем директиву router-link
, чтобы создать маршрутную ссылку, а затем используем слот v-slot
, чтобы получить сгенерированный href
и функцию navigate
из router-link
. Мы затем привязываем href
к атрибуту href
в элементе <a>
, и добавляем слушатель события auxclick.ctrl.exact.prevent
, чтобы обрабатывать клик по колесику с зажатой клавишей Ctrl. Мы также устанавливаем атрибут target="_blank"
, чтобы открыть ссылку в новой вкладке.
Шаг 3: Определение маршрута
В предыдущем примере мы использовали путь /my-link
для ссылки. Теперь вам нужно определить этот путь как маршрут в вашем экземпляре маршрутизатора. Вот пример того, как это можно сделать:
const routes = [ { path: '/my-link', component: MyLinkComponent } ] const router = createRouter({ history: createWebHistory(), routes })
Здесь мы определяем маршрут /my-link
и указываем компонент, который должен быть показан при переходе по этому маршруту. Вы должны создать компонент MyLinkComponent
и использовать его для отображения контента, который вы хотите показать по ссылке.
Теперь, при клике на ссылку с колесиком, ваше приложение будет переходить по этому маршруту и откроет его в новой вкладке.