Выйти из маршрута или функции для доступности в SPA - PullRequest
0 голосов
/ 07 июня 2019

Есть ли разница, если мы используем

  • ссылка с маршрутом: <a href="/logout">Logout</a> или
  • кнопка с функцией: <button onclick="logout()">Logout</button>

с точки зрения доступности?

Маршрут /logout будет в основном перенаправлен на /login То же самое происходит при использовании функции logout().

Есть ли плюсы / минусы для одного или другого?

Ответы [ 2 ]

1 голос
/ 07 июня 2019

Не полный ответ, просто кое-что добавить:

Вы уже понимаете общий случай использования ссылки (навигация) по сравнению с кнопкой (действия на основе JS).

Вот как я обычно думаю об этом в SPA:

В случае входа в систему / выхода из системы или отправки формы, хотя «действие» может перейти на новую страницу, но оно является косвенным, его сначала нужно обработатьи обрабатывается SPA, на основании которого принимается решение о маршруте.Кроме того, нет смысла позволять открывать вход / выход из системы на новой вкладке, ссылки на которую предусмотрены по умолчанию, или чтобы ее можно было добавить в закладки.

Также подумайте о том, что вы делаете с SignUp или Login, ониявляются кнопками.

Так что я бы пошел с кнопкой в ​​этом случае.

0 голосов
/ 07 июня 2019

Если мы говорим об одностраничных приложениях, href перезагрузит страницу, которая вам не нужна.Что вы хотите, однако, это перерисовать страницу.Если вы используете фреймворки, у них есть «маршрутизаторы», которые делают это за вас, но если вы используете простой DOM, я бы предложил использовать div «render» и позволить logout () выполнить рендеринг.

...