Как сделать, чтобы next (false) в BeforeRouteEnter препятствовал Vue-Router от навигации по маршруту? - PullRequest
0 голосов
/ 16 апреля 2019

Я отчаянно желаю реализовать навигационную защиту, которая будет препятствовать доступу пользователей к странице элемента, если элемент не существует, на основе идентификатора, указанного в параметрах маршрута.

В Vue-Router говорится, чтоукажите, что:

далее (false): отмена текущей навигации.Если URL-адрес браузера был изменен (либо вручную пользователем, либо с помощью кнопки «Назад»), он будет сброшен до адреса из маршрута.

Еще в моем компоненте, используя next (false) won 't предотвратить изменение маршрута или рендеринг компонента.Он даже не вернется назад, как обещано в документе.

beforeRouteEnter(to, from, next) {
    next(false)
    ajaxcall$.subscribe(data => next(vm => vm.setData(data)))

Я бы ожидал, что очевидный next(false) сработает и предотвратит рендеринг компонента и маршрута, но нет.Ajax-вызов сделан, и данные установлены.

...