Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

578
Visualizações
Failed to resolve component <router-view> VueRouter

I have a project build with Vue.js 3.2.13 and Vue-Router 4.0.14. I think I do everything right but the browser raises an error "[Vue warn]: Failed to resolve component: router-view If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. at "

My router.js file:

import { createRouter, createWebHistory } from "vue-router";

const routes = [
  {
    path: "/",
    name: "index",
    component: () => import("@/views/HomePage.vue"),
  },
  {
    path: "/signin",
    name: "signin",
    component: () => import("@/views/SignIn.vue"),
  },
  {
    path: "/signup",
    name: "signup",
    component: () => import("@/views/SignUp.vue"),
  },
];

const router = createRouter({
  history: createWebHistory(),
  routes,
});

export default router;

My main.js file;

import { createApp } from "vue";
import App from "./App.vue";


import { router } from "./router";


createApp(App).component("fa", FontAwesomeIcon).use(router).mount("#app");

Additionally App.vue:

<template>
  <div id="app">
    <HeaderNavbar />
    <router-view></router-view>
  </div>
</template>

When I run the project I get the warning on browser console:

[Vue warn]: Failed to resolve component: router-view
If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

The problem in your case is exporting router as default from router.js but importing it as named import in main.js.

Therefore, replacing

import { router } from "./router"; // ❌

with

import router from "./router"; // 👍

will make VueRouter work as expected. (I doubt routing currently works in your project. It shouldn't.)


Alternatively, adding a named export of router to router.js (and keeping the current import syntax in main.js) would also make the problem go away.
You can do that by adding export in front of const router = createRouter(/* etc... */, in that file. If you do this, export default router becomes obsolete (unused).

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda