Maison > interface Web > js tutoriel > Comment implémenter le saut du composant de page en réaction

Comment implémenter le saut du composant de page en réaction

青灯夜游
Libérer: 2021-11-30 10:05:02
original
11492 Les gens l'ont consulté

Méthode Jump : 1. Utilisez la balise Link, la syntaxe "" 2. Utilisez push(), la syntaxe "push("Jump address") "; 3. Utilisez history(), la syntaxe "this.props.history.goBack();" etc.

Comment implémenter le saut du composant de page en réaction

L'environnement d'exploitation de ce tutoriel : système Windows 7, React version 17.0.1, ordinateur Dell G3.

Plusieurs méthodes de saut de page (composant) dans React

1 Utilisez le lien dans React-Router-dom pour réaliser un saut de page

Généralement applicable aux boutons cliqués ou à d'autres composants pour accéder à la page, utilisation spécifique La méthode. est la suivante :

<Link
    to={{
        pathname: &#39;/path/newpath&#39;,
        state: {  // 页面跳转要传递的数据,如下
              data1: {},
              data2: []
        },
    }}
>
   <Button>
        点击跳转
   </Button>
</Link>
Copier après la connexion

2. Utilisez push dans React-Router-redux pour accéder à la page

react-router-redux contient les fonctions suivantes, qui sont généralement utilisées en combinaison avec redux :

  • push - sauter vers le chemin spécifié
  • replace - remplacer la position actuelle dans l'historique
  • go - déplacer un nombre relatif de positions en arrière ou en avant dans l'historique
  • goForward - avancer d'une position. Équivalent à go(1)
  • goBack - recule d'une position. Équivalent à go(-1)

Lorsqu'ils sont utilisés spécifiquement, les sauts de page sont effectués en envoyant une dépêche :

let param1 = {}
dispatch(push("/path/newpath'", param1));
dispatch(replace("/path/newpath'", param1));
Copier après la connexion

3 Utilisez l'historique dans RouteComponentProps pour faire reculer la page

Généralement, après avoir terminé une opération, vous avez besoin. pour revenir à la page précédente Utilisé pour une page.

this.props.history.goBack();
Copier après la connexion

4. Ouvrez une nouvelle page à onglet et interceptez le chemin

Définissez d'abord l'itinéraire comme :

path: "/pathname/:param1/:param2/:param3",
Copier après la connexion

Cliquez sur l'événement pour accéder à une nouvelle page et ouvrir un nouvel onglet :

window.open(`pathname/${param1}/${param2}/${param3}`)
Copier après la connexion

Obtenez le chemin sur le nouvelle page Paramètres :

param1:  this.props.match.params.param1, 
param2:  this.props.match.params.param2, 
param3:  this.props.match.params.param3,
Copier après la connexion

Obtenir les paramètres du chemin :

path?key1=value1&key2=value2
Copier après la connexion
const query = this.props.match.location.search 
const arr = query.split('&')  // ['?key1=value1', '&key2=value2']
const successCount = arr[0].substr(6) // 'value1'
const failedCount = arr[1].substr(6) // 'value2'
Copier après la connexion

ou

function GetUrlParam(url, paramName) {
  var arr = url.split("?");

  if (arr.length > 1) {
    var paramArr= arr[1].split("&");
    var arr;
    for (var i = 0; i < paramArr.length; i++) {
      arr = paramArr[i].split("=");

      if (arr != null && arr[0] == paramName) {
        return arr[1];
      }
    }
    return "";
  }else {
    return "";
  } 
}
Copier après la connexion

Apprentissage recommandé : "tutoriel vidéo React"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal