Table des matières
Configurer la source de données du serveur d'Ag Grid
Implémentez la fonction Getrows
Maison interface Web js tutoriel Chargement de défilement infini avec réact et grille AG

Chargement de défilement infini avec réact et grille AG

Sep 02, 2025 am 10:06 AM

Chargement de défilement infini avec réact et grille AG

Cet article expliquera comment utiliser la grille AG dans un projet React pour obtenir des données de chargement de défilement infinies. En configurant la source de données du serveur d'Ag Grid, nous pouvons obtenir dynamiquement des données de l'API et les ajoutons aux données existantes lorsque l'utilisateur défile vers le bas du tableau, réalisant le chargement virtualisé et améliorant les performances de rendu des grands ensembles de données. L'article fournira des exemples de code détaillés pour aider les développeurs à démarrer rapidement et à fournir des considérations pour assurer le chargement des données et l'expérience utilisateur en douceur.

AG Grid est un puissant composant de fiche technique JavaScript qui prend en charge une variété de cadres, y compris React. Le défilement infini est une caractéristique importante fournie par AG Grid, ce qui nous permet de traiter efficacement de grandes quantités de données sans charger toutes les données au client à la fois.

Configurer la source de données du serveur d'Ag Grid

Pour atteindre le défilement infini, nous devons configurer la source de données du serveur de la grille AG. Cela implique la configuration de la source de données dans l'événement Gridready et la définition d'une fonction Getrows pour gérer l'acquisition de données.

Tout d'abord, dans la configuration de la grille AG, ajoutez le gestionnaire d'événements Gridready:

 <aggridget autres de configuration ongridready="{OnGridReady}"></aggridget>

Ensuite, définissez la fonction OnGridReady et définissez la source de données du serveur dans cette fonction:

 const OnGridReady = (params) => {
  const api = params.api;
  const getrows = (params) => {
    // Appelez votre API ici pour obtenir des données GetData (params)
      .Then (({data}) => {
        Params.SucCessCallback (Data, Data.Lastrow);
      })
      .Catch (() => params.failCallback ());
  };

  api.SetServerSideDataSource ({getrows});
};

Dans le code ci-dessus, API.SetServerSideDataSource ({Getrows}) connecte la grille AG à la source de données du serveur. La fonction Getrows est la clé, qui est responsable de l'appel de l'API lorsque la grille AG a besoin de plus de données.

Implémentez la fonction Getrows

La fonction Getrows reçoit un objet Params contenant des informations qui nous sont transmis par la grille AG, tels que les critères de tri et de filtrage, et la plage de données demandée. Nous devons utiliser ces informations pour appeler l'API et passer les données renvoyées à params.successCallback ou params.failCallback.

Voici un exemple de fonction Getrows:

 const getData = (params) => {
  // Simuler l'appel de l'API renvoie une nouvelle promesse ((résoudre, rejeter) => {
    setTimeout (() => {
      const startrow = params.request.startrow;
      const endrow = params.request.endRow;

      // Obtenez des données à partir de la base de données ou de l'API basée sur StarTrow et Endrow const data = génératedata (StarTrow, Endrow);

      // Supposons qu'il y ait 1000 enregistrements dans le const total lastrow = 1000;

      résolve ({data, lastrow});
    }, 500);
  });
};

const génératedata = (startrow, endrow) => {
    const data = [];
    pour (soit i = startrow; i <endrow i data.push nom: retourner les donn><p> Dans l'exemple ci-dessus, la fonction GetData simule un appel API qui génère des données basées sur les paramètres Startrow et Endrow. La variable Lastrow représente le nombre total de données.</p>
<p> Params.SuccessCallback (Data, Data.Lastrow) est utilisé pour informer AG que les données ont été récupérées avec succès. Les données sont le tableau de données récupéré et Data.Lastrow est le nombre total de lignes de données. Si l'appel API échoue, params.failCallback () est appelé.</p>
<h2> Choses à noter</h2>
<ul>
<li> <strong>Trier et filtrer:</strong> si votre grille AG est configurée avec le tri ou le filtrage, vous devez vous assurer que la fonction Getrows peut gérer ces conditions et les transmettre à l'API.</li>
<li> <strong>Gestion des erreurs:</strong> Dans la fonction Getrows, vous devez gérer correctement les erreurs qui peuvent se produire dans l'appel de l'API et l'appel Params.failCallback ().</li>
<li> <strong>Optimisation des performances:</strong> assurez-vous que l'API peut gérer efficacement les demandes de pagination et éviter les goulots d'étranglement des performances.</li>
<li> <strong>Cohérence des données:</strong> Dans un environnement multi-utilisateurs, les problèmes de cohérence des données doivent être pris en compte pour s'assurer que les données observées par les utilisateurs sont à jour.</li>
</ul>
<h2> Résumer</h2>
<p> En configurant la source de données du serveur d'Ag Grid, nous pouvons facilement implémenter le chargement de défilement infini des données, améliorant ainsi les performances de rendu sur de grands ensembles de données. Il est important de noter que vous devez vous assurer que la fonction Getrows peut gérer correctement le tri, le filtrage et les erreurs et optimiser les performances de l'API. J'espère que cet article vous aidera à mieux comprendre et utiliser la fonction de défilement infinie de la grille AG.</p></endrow>

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!

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

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Stock Market GPT

Stock Market GPT

Recherche d'investissement basée sur l'IA pour des décisions plus intelligentes

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

JavaScript réalise l'effet de commutation d'image click-through: tutoriel professionnel JavaScript réalise l'effet de commutation d'image click-through: tutoriel professionnel Sep 18, 2025 pm 01:03 PM

Cet article présentera comment utiliser JavaScript pour réaliser l'effet de cliquer sur les images. L'idée principale est d'utiliser l'attribut Data- * de HTML5 pour stocker le chemin d'image alternatif et écouter des événements de clic via JavaScript, changez dynamiquement les attributs SRC, réalisant ainsi la commutation d'image. Cet article fournira des exemples de code et des explications détaillés pour vous aider à comprendre et à maîtriser cet effet interactif couramment utilisé.

Comment obtenir l'emplacement de l'utilisateur avec l'API Geolocation en JavaScript? Comment obtenir l'emplacement de l'utilisateur avec l'API Geolocation en JavaScript? Sep 21, 2025 am 06:19 AM

Tout d'abord, vérifiez si le navigateur prend en charge GeolocationAPI. Si vous êtes pris en charge, appelez getCurrentPosition () pour obtenir les coordonnées de l'emplacement actuelles de l'utilisateur et obtenir les valeurs de latitude et de longitude grâce à des rappels réussis. Dans le même temps, fournissez des exceptions de traitement des rappels d'erreur tels que l'autorisation de déni, l'indisponibilité de l'emplacement ou du délai d'attente. Vous pouvez également transmettre des options de configuration pour activer une précision élevée, définir le délai d'expiration et la période de validité du cache. L'ensemble du processus nécessite l'autorisation de l'utilisateur et la gestion des erreurs correspondante.

Comment créer un intervalle répétitif avec SetInterval dans JavaScript Comment créer un intervalle répétitif avec SetInterval dans JavaScript Sep 21, 2025 am 05:31 AM

Pour créer un intervalle de répétition dans JavaScript, vous devez utiliser la fonction setInterval (), qui exécutera à plusieurs reprises des fonctions ou des blocs de code à des intervalles de millisecondes spécifiés. Par exemple, setInterval (() => {Console.log ("Exécuter toutes les 2 secondes");}, 2000) publiera un message toutes les 2 secondes jusqu'à ce qu'il soit effacé par ClearInterval (Interpalid). Il peut être utilisé dans les applications réelles pour mettre à jour les horloges, les serveurs de sondage, etc., mais faire attention à la limite de retard minimum et à l'impact du temps d'exécution de la fonction, et effacez l'intervalle dans le temps lorsqu'il n'est plus nécessaire pour éviter les fuites de mémoire. Surtout avant la désinstallation des composants ou la fermeture des pages, assurez-vous que

Pièges et solutions communes pour l'accès à l'élément DOM en JavaScript Pièges et solutions communes pour l'accès à l'élément DOM en JavaScript Sep 15, 2025 pm 01:24 PM

Cet article vise à résoudre le problème du retour null lors de l'obtention d'éléments DOM via document.getElementById () dans JavaScript. Le noyau consiste à comprendre le synchronisation d'exécution du script et l'état de l'analyse DOM. En plaçant correctement la balise ou en utilisant l'événement téléchargé DomContent, vous pouvez vous assurer que l'élément est à nouveau tenté lorsqu'il est disponible, en évitant efficacement de telles erreurs.

L'API de composition Nuxt 3 a expliqué L'API de composition Nuxt 3 a expliqué Sep 20, 2025 am 03:00 AM

L'utilisation du noyau de l'API de composition de Nuxt3 comprend: 1. DefinePageMeta est utilisée pour définir les méta-informations de la page, telles que le titre, la mise en page et le middleware, qui doivent être appelées directement et ne peuvent pas être placées dans des déclarations conditionnelles; 2. Usyhead est utilisé pour gérer les balises d'en-tête de page, prend en charge les mises à jour statiques et réactives et doit coopérer avec DefinePageMeta pour obtenir l'optimisation du référencement; 3. USEASYNCDATA est utilisé pour obtenir en toute sécurité des données asynchrones, gérer automatiquement l'état de chargement et d'erreur et prend en charge le contrôle d'acquisition de données du serveur et du client; 4. UseFetch est une encapsulation de usEasyncdata et $ fetch, qui dépente automatiquement la clé de demande pour éviter les demandes en double

Comment copier du texte dans le presse-papiers en javascript? Comment copier du texte dans le presse-papiers en javascript? Sep 18, 2025 am 03:50 AM

Utilisez la méthode WriteText de ClipboardAPI pour copier du texte dans le presse-papiers, il doit être appelé dans le contexte de sécurité et l'interaction utilisateur, prend en charge les navigateurs modernes et l'ancienne version peut être dégradée avec EXECCOMAND.

Formatage des nombres en javascript: utilisez la méthode TofixEd () pour conserver les décimales fixes Formatage des nombres en javascript: utilisez la méthode TofixEd () pour conserver les décimales fixes Sep 16, 2025 am 11:57 AM

Ce tutoriel explique en détail comment formater les numéros en chaînes avec deux décimales fixes en JavaScript, même les entiers peuvent être affichés sous la forme de "# .00". Nous nous concentrerons sur l'utilisation de la méthode numéro.prototype.tofixed (), y compris sa syntaxe, sa fonctionnalité, son exemple de code et des points clés à noter, comme son type de retour étant toujours une chaîne.

Comment créer une chaîne multi-lignes en JavaScript? Comment créer une chaîne multi-lignes en JavaScript? Sep 20, 2025 am 06:11 AM

ThebestatorreatEAmulti-linestringinjavascriptsisingstingTemplatalalswithbackticks, qui sepresereBreakenexactlyAswritten.

See all articles