#javascript #vue.js #vue-component #vue-router
Вопрос:
Например, В main.js Я импортировал Vue-маршрутизатор и создал новый vue-маршрутизатор, подобный этому:
import VueRouter from "vue-router";
const router = new VueRouter({
routes,
mode: "history",
});
new Vue({
router,
render: (h) => h(App),
}).$mount("#app");
Затем в другом компоненте, расположенном в папке компонентов, которую я пытаюсь использовать:
router.push({ name: 'New page' });
Но я получаю
«маршрутизатор» не определен, нет-не определено
Есть ли способ импортировать компонент только один раз?
Комментарии:
1. Вы должны использовать
this.$router.push({ name: 'New page' });
2. @Буссаджрабрахим это зависит от того, используете ли вы api
options
илиcomposition
нет? В составе api необходимо использоватьuseRoute
. Подробнее3. @Chin.Удара Похоже, что он использует vue 2, а не vue 3
4. VueRouter — это не компонент, а плагин Vue. Как только вы установите его на корневой экземпляр Vue, он автоматически станет доступен во всех ваших других компонентах под именем
this.$router