Ссылка на предыдущую страницу при изменении текста ссылки с помощью React Router

#reactjs #react-router-dom

#reactjs #реагировать-маршрутизатор-dom

Вопрос:

Пожалуйста, взгляните на мой код здесь, на stackblitz.

Теперь это то, чего я хочу:

  1. Я хочу, чтобы домашняя ссылка на панели навигации была ссылкой на предыдущую страницу. (например, на Level1 странице домашняя ссылка должна вернуть меня на Category1 страницу.)
  2. В том же примере, приведенном выше, когда я нахожусь на Level1 странице, я хочу, чтобы текст ссылки «Главная» изменился на «Категория 1»; а когда я нахожусь на Category1 странице, я хочу, чтобы ссылка снова изменилась на «Главная». In short, the link's text would be the name of the previous page. Но когда я захожу на главную страницу, я хочу, чтобы она сменилась на «Добро пожаловать!».
  3. Я хочу, чтобы все это было динамичным.

Это начальный Navbar.js:

 import React from "react";
import { Link } from "react-router-dom";

const Navbar = () => {
  return (
    <nav>
      <Link to="/">
        <p className="home-link">Home</p>
      </Link>
    </nav>
  );
};

export default Navbar;
 

Пожалуйста, помогите.

Ответ №1:

в этом примере вы не можете получить родительский элемент текущего маршрута и установить его во внутреннем тексте домашнего BTN.

 window.location.pathname.split('/')[window.location.pathname.split('/').length - 2]
 

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