React-Router предоставляет компоненты и
Компонент
Компонент используется для перехода к существующему маршруту
import { Link } from 'react-router-dom'; classAppextendsComponent { render() { return (); } }
Обратите внимание, что значение PROP является таким же, как значение, присвоенное Path Prop в <маршруте>. Страница теперь оказывает две ссылки:
Когда вы нажимаете на дому, вы увидите текст внутри домой.
Когда вы перейдите к маршруту, используя , stink.push (), который добавляет запись в стек истории. Таким образом, когда вы нажимаете на заднюю кнопку браузера, вы будете перемещаться к предыдущему маршруту, который вы получили доступ к (домашний маршрут). Как упоминалось в предыдущей главе, библиотека истории используется React-маршрутизатором для поддержания состояния приложения в качестве пользовательского прохода через различные маршруты во время путешествия приложения.
Компонент имеет два других реквизита-замены и innerref.
Заменить опоры
Замените PROP в <Ссылка> Звонки stall.replace (), которые заменяет текущую запись в стеке истории с новым именем пути, упомянутым в процессе:
Dashboard
Например, если вы получите доступ к странице на пути/домой, доступ к предыдущей ссылке заменит текущую запись в стек истории с помощью/приборной панелью, что в основном заменяет запись/дом с/приборной панелью.
Innerref Prop.
Реагирование обеспечивает REF для получения ссылки на элемент отображения DOM. Эта ссылка (REF) может использоваться для выполнения определенных операций вне регулярного потока, такого как фокусировка на входном элементе, воспроизведении носителя и т. Д. – это композитный компонент, и он делает анкерный элемент на DOM.
Компонент , упомянутый в предыдущем фрагменте кода, переводит на анкерные элементы следующим образом:
.. ..
Чтобы получить ссылку на этот оказанный якорный элемент, innnerref innerref добавляется в :
Innerref Rupp принимает функцию обратного вызова в качестве значения; Здесь функция refsallback указывается как значение для innerref Prup. Refcallback получает ссылку на внутренний элемент компонента :
refCallback(node) { node.onmouseover= () => { node.focus(); } }
Функция обратного вызова-REFCALLBACK – вызывается, когда компонент Components. Из фрагмента предыдущего кода мы можем видеть, что обработчик для мыши добавляется как для опорных элементов, отображаемых двумя компонентами . Когда пользователь охватывает ссылку, соответствующий якорь получает фокус.
Прокрутить объект
Для опоры можно либо строку, либо объект. Объект может содержать следующие свойства: • Pathname: путь для навигации по • Поиск: Параметры запроса к пути, представленные в виде строкового значения • HASHH: a Hash String для добавления к URL-адресу • Состояние: объект, содержащий информацию о состоянии что оказанный компонент может потреблять
Используя эти параметры, давайте добавим компонент :
User
Предыдущий код переводит к следующему:
Государственная информация не включена в путь URL; Тем не менее, он доступен для компонента, который оказывается в результате A
{ const { pathname, search, hash, state } = location; return ( Inside User route); }} />Pathname: {pathname}
Search: {search}
Hash: {hash}
State: {'{'} {Object.keys(state).map((element, index) => { return (
{element}: {state[element].toString()} ) })} {'}'}
Объект местоположения содержит все ранее определенные параметры, включая объект состояния.
Государственный объект можно использовать для хранения данных, так как пользователь навигациирует через приложение, и предоставляет эти данные компонент, который отображается следующим в результате совпадения <маршрута>.
Компонент Навилинка
Компонент
Давайте посмотрим на эти опоры, которые помогут вам стиль компонент
ActiveClassname Prop.
По умолчанию класс Tameactive применяется к Active
Следующим шагом является уточнение стилей для класса CSS, выбранного в файле CSS вашего приложения. Обратите внимание, что первый
Тем не менее, когда нажат второй
Пропорция ActiveStyle
Puctestyle Prop также используется для стиля выбранного
User
Точный опора Когда вы нажимаете на
В этом случае точная опора может быть использована для применения активного класса или акции ActiveStyle только тогда, когда путь соответствует URL-адресу браузера:
Home Dashboard
Строгий опора Компонент
Dashboard
Здесь выделенный класс наносится на компонент
Абсурдный опорный
Isactactact Prup используется для определения того, должен ли компонент
{ if (!match) { returnfalse; } constsearchParams = newURLSearchParams(location.search); returnmatch.isExact && searchParams.has('id'); }}> User
Из предыдущего примера функция принимает два параметра матча и местоположение. Стили, определенные в пропорте AcciveStyle, применяются только в том случае, если условие Match.isexact && SearchParams.has («ID») оценивает true, поэтому только тогда, когда совпадение точным, а URL-адрес имеет идентификатор параметра запроса.
Когда URL-адрес браузера находится/пользователь, отображается соответствующий маршрут, определенный с помощью <маршрута>. Однако компонент
Расположение опоры Истичная функция в
{ if (!match) { returnfalse; } constsearchParams = newURLSearchParams(location.search); returnmatch.isExact && searchParams.has('id'); }}> User
Обратите внимание, что для опоры не указывает параметр поиска; Однако опора расположения содержит его, и, таким образом, когда местоположение браузера является/пользователь, это активная функция возвращает true, поскольку параметр поиска включает в себя свойство ID.
Если вы нашли эту статью полезную, вы можете исследовать React Router Краткое начало Руководство Отказ Заполнены многочисленными примерами рук, React Router Краткое начало Руководство Помогает вам узнать, как создавать и настроить маршруты, используя разные компоненты React Router.