Vue-routeur de rediriger sur la page non trouvée (erreur 404)

Je suis en train de rediriger vers 404.html sur la page à l'aide de la router.beforeEach hook global, sans beaucoup de succès (à l'aide de Vueet Vue-Router 1.0):

router.beforeEach(function (transition) {
    if (transition.to.path === '/*') {
        window.location.href = '/404.html'
    } else {
        transition.next()
    }
});

Ce n'est pas une redirection vers la page 404.html quand un non-existant route est inséré, juste me donner un vide fragment. Seulement lorsque le codage en dur some-site.com/* il va rediriger la some-site.com/404.html

Je suis sûr qu'il ya quelque chose de très évident ici que je suis dominant, mais je ne peux pas comprendre ce que.


Veuillez noter que ce que je suis à la recherche d'un rediriger vers une nouvelle page, pas une redirection vers une autre voie, qui pourrait être facilement obtenus en utilisant router.redirect comme dans ces extraits:

router.redirect({
    '*': '404'
})

Alors que sur mon router.map, j'ai pu avoir les éléments suivants:

 router.map({
    '/404': {
        name: '404'
        component: {
            template: '<p>Page Not Found</p>'
        }
    }
})
  • Je n'ai pas encore trouvé de solution, mais ce qui se passe si vous essayez d'accéder à un itinéraire à l'aide de <a> balise qui n'est pas géré par Vue routeur? Est-il naviguer hors de l'app?
  • Il sera accédez à l'itinéraire prévu, indépendamment de savoir si j'utilise href ou v-link (par exemple, href="some-site.com/home" au lieu de v-link="{nom:'accueil'}"). Vous ne savez pas si c'est ce que vous demandez?
  • Mes excuses, je pensais à la façon de sortir de l'app, même quand nous avons <base href="/">. Qui n'était pas relié à votre question, de toute façon. J'ai posté mes pensées comme une réponse ci-dessous, s'il vous plaît essayer it out et laissez-moi savoir si ça fonctionne!
InformationsquelleAutor pierreb | 2016-10-22