В чем разница между использованием href и Link в React JS

#reactjs

#reactjs

Вопрос:

в чем разница между LINK

 <Link to="/login" className="header">Sign In </Link>
  

и использованием href в React JS

 <a href={url}>Sign In </a>
  

в чем основное различие между их использованием в React JS

Комментарии:

1. href — это объект window. Link — это оболочка маршрутизатора react. Под капотом это делает объект window. Но это может помочь вам отслеживать состояние, предварительные настройки и переходить с одного маршрута на другой без перезагрузки страницы

2. href — это стандартный HTML. <Link> — это компонент из библиотеки, который вы не упомянули, но который описан в документации библиотеки.

Ответ №1:

Два момента:

Во-первых, это традиционный способ создания ссылки, который НЕ использует History API, каждый клик будет перемещаться по всей странице. таким образом, сложно выполнить SPA и т.д. В контракте, <Link> Можно выполнить SPA и не запускать обновление страницы.

Во-вторых, помимо использования History API, в React Router V3 можно знать, когда маршрут, на который он ссылается, активен, и автоматически применять activeClassName и / или activeStyle при указании любого из параметров. Будет активен, если текущий маршрут является либо связанным маршрутом, либо любым потомком связанного маршрута. В контракте <a href> невозможно.

В React Router версии 4 вышеупомянутая функция грубо разделена на и .