Я использую VueJS2 и у меня возникли проблемы с маршрутизатором.
Мои маршруты настроены следующим образом:
import TypeoneSignup from "../components/typeone-signup";
import TypetwoSignup from "../components/typetwo-signup";
import SomeSecretPath from "../components/some-secret-path";
import RegisterSecretRecord from "../components/register-secret-record";
import RegisteredSuccess from "../components/registered-success";
import ErrorView from "../components/error-view";
import FourOhFour from "../components/four-oh-four";
import TargetPage from "../components/targetpage-redirect";
export const routes = [
{
name: 'Ttypeone-signup',
path: '/signup-typeone',
component: TypeoneSignup
},
{
name: 'typetwo-signup',
path: '/signup-typetwo',
component: TypetwoSignup
},
{
name: 'some-secret-path',
path: '/some-secret-path/:token',
component: SomeSecretPath,
props: (route) => ({ token: route.params.token })
},
{
name: 'registered-success',
path: '/success',
component: RegisteredSuccess
},
{
name: 'error',
path: '/error',
component: ErrorView
},
{
name: 'register-secret-record',
path: '/register-secret-record/:token',
component: RegistersecretRecord,
props: (route) => ({ token: route.params.token })
},
{
name: '404',
path: '/404',
component: FourOhFour
},
{
name: 'targetpage',
path: '(/?)$',
component: TargetPage
},
{
path: '*',
redirect: '404'
}
];
Я пытаюсь добиться того, чтобы каждый раз, когда пользователь заходил на mydomain.com или mydomain.com/, его перенаправляли на myotherdomain.com. Вот что делает targetpage-redirect.
Однако пользователь не должен быть перенаправлен, если он входит в mydomain.com/anypath, поскольку существуют определенные пути, к которым ему необходимо получить доступ в определенные моменты времени. По сути, я пытаюсь настроить перенаправление в стиле «первой страницы».
Проблема, однако, в том, что TargetPage, похоже, «срабатывает» на всех без исключения URL / путях.
Я пытался проверить это с помощью Express route tester , и он говорит, что он должен корректно запускаться только на путях, которые содержат одну косую черту или нет, а затем заканчивается.
Так, что вызывает перенаправление со всех других путей?
Edit:
Итак, оглянувшись вокруг и беспорядочно комментируя фрагменты кода, кажется, что проблема не в самом регулярном выражении, а в
import TargetPage from "../components/targetpage-redirect";
часть, которая каким-то образом заставляет запускаться скрипт на странице.
Перенаправление моей целевой страницы выглядит следующим образом:
<template>
</template>
<script>
window.location.replace("https://myotherdomain.com");
</script>
Может ли быть правдой, что подобная страница не может быть импортирована без выполнения сценария, или я что-то совершенно неправильно понимаю.