Creé una nueva aplicación Vue con una ruta base. Debido al hecho de que la aplicación está incrustada en otra aplicación Vue, esta aplicación no representa el router-view
inicio. Si desea saber más acerca de cómo o por qué esta aplicación está integrada en otra aplicación, eche un vistazo aquí:
montar aplicaciones Vue en el contenedor de la aplicación Vue principal
y mi propia respuesta a este problema:
https://stackoverflow.com/a/58265830/9945420
Al iniciar mi aplicación, muestra todo excepto el router-view
. Quiero redirigir al inicio por la URL del navegador dada. Esta es la configuración de mi enrutador :
import Vue from 'vue';
import Router from 'vue-router';
import One from './views/One.vue';
import Two from './views/Two.vue';
Vue.use(Router);
const router = new Router({
base: '/my-embedded-app/',
mode: 'history',
routes: [
{
path: '/',
component: One,
},
{
path: '/two',
component: Two,
},
],
});
router.replace(router.currentRoute.fullPath);
export default router;
Quiero que la aplicación represente el componente Dos cuando llame .../my-embedded-app/two
. Desafortunadamente, router.replace
siempre redirige a /
(por lo que la URL del navegador es .../my-embedded-app/
) Depuré el router
, y vi que el camino es /
, pero esperaría que fuera /two
.
Nota importante:
no quiero redirigir al usuario a donde /two
sea que esté la URL /
. Solo quiero representar la vista Two
cuando la url es /two
. Actualmente no lo hace.
¿Qué puede estar mal? Tal vez ni siquiera necesito esa redirección, y puedo resolver el problema de una manera más elegante.