Maison interface Web js tutoriel Quelle est la différence entre réagir et réagir natif

Quelle est la différence entre réagir et réagir natif

Nov 27, 2020 am 10:49 AM
react react native 区别

La différence entre React et React Native est la suivante : 1. La plate-forme sur laquelle le framework fonctionne est différente ; 2. Le principe de fonctionnement est différent 3. Le cycle de rendu est différent 4. Tous les éléments de React Native ; sera remplacé par les composants React spécifiés par la plateforme ;5. Les API des plateformes hôtes sont différentes.

Quelle est la différence entre réagir et réagir natif

L'environnement de cet article : Windows10, version React16, ordinateur Dell G3.

(Partage de vidéos d'apprentissage : tutoriel vidéo React)

Les différences sont les suivantes :

1. Les plateformes sur lesquelles le framework fonctionne sont différentes.

RN Il est dérivé de React. Les deux frameworks utilisent la syntaxe de développement JSX, mais RN est un framework JS utilisé pour développer des applications mobiles iOS et Andriod véritablement rendues de manière native, tandis que React utilise le navigateur comme plate-forme de rendu.

2. Différences dans les principes de fonctionnement

Le DOM virtuel se situe entre la vue décrite par le développeur et la vue réellement rendue sur la page. Si vous souhaitez restituer une interface utilisateur interactive sur un navigateur, les développeurs doivent exploiter le modèle objet de document du navigateur. L'émergence de Virtual DOM consiste à économiser les performances consommées par cette partie de l'opération.

Mais l’énorme potentiel du Virtual DOM réside dans cette couche d’abstraction, qui peut apporter de nombreuses possibilités.

Le principe de fonctionnement de React Native est d'appeler l'API Objective-C pour restituer les composants iOS et l'API Java pour restituer les composants Android au lieu du rendu vers DOM. Le pontage permet à React d'appeler les composants d'interface utilisateur ouverts par la plate-forme hôte, et le composant React renvoie le code de balisage décrivant l'interface via la méthode de rendu. S'il s'agit d'une plate-forme Web, React analysera éventuellement le code de balisage dans le DOM du navigateur ; dans React Native, le code de balisage sera analysé en composants spécifiques à la plate-forme, par exemple, plate-forme.

3. Cycle de rendu

Le cycle de rendu de React démarre une fois le composant React monté sur le DOM, puis React entre dans le cycle de rendu et restitue le composant selon les besoins. Dans la phase de rendu, React restitue les balises HTML renvoyées par le développeur en retour directement sur la page à la demande.

Le cycle de vie de React Native est fondamentalement le même que celui de React. En termes de rendu, étant donné que React Native repose sur le pontage et ne s'exécute pas sur le thread principal de l'interface utilisateur, il peut exécuter ces appels asynchrones sans affecter l'expérience utilisateur. .

4. Créer des composants

Lors de l'écriture de React pour l'environnement Web, la vue doit finalement être rendue en éléments HTML ordinaires dans React Native, tous les éléments seront des composants React spécifiés par la plate-forme. , par exemple, dans iOS, le composant est rendu sous la forme UIView, mais sur la plate-forme Android, il est rendu sous la forme View.

Les éléments d'interface utilisateur sont tous des composants React, pas des éléments HTML de base comme

, donc lorsque vous utilisez chaque composant, vous devez l'importer explicitement, par exemple :

import { DatePickerIOS } from 'react-native';
Copier après la connexion

5.

Sur le Web, l'utilisation de styles CSS pour ajouter des styles aux composants React est déjà une partie inaccessible du processus de développement. React n'affecte généralement pas la façon dont nous écrivons CSS, et facilite la création dynamique de styles (via l'état et les accessoires), mais à part cela, React ne se soucie pas de la façon dont nous gérons les styles.

Il existe un grand nombre de façons de gérer la mise en page et les styles sur les plateformes non Web. Lorsque nous utilisons React Native, il suffit d'utiliser une méthode standard pour gérer les styles. inclut une réduction L'implémentation du sous-ensemble CSS, qui est principalement présenté via flexbox, est aussi simple que possible au lieu d'implémenter toutes les règles CSS. Contrairement à la plateforme Web, où le niveau de prise en charge CSS varie d'un navigateur à l'autre, React Native atteint des règles de style cohérentes.

6. API de la plateforme hôte

La plus grande différence entre React utilisant l'environnement Web et React Native réside dans l'API de la plateforme hôte.

Sur le Web, nous devons souvent faire face à des problèmes causés par une adoption incohérente et fragmentée des normes, et la plupart des navigateurs ne prennent en charge qu'un sous-ensemble de fonctionnalités de base. Cependant, dans React Native, les API spécifiques à la plate-forme jouent un rôle important en offrant une excellente expérience utilisateur native. Bien entendu, il y a bien d’autres aspects à considérer. L'API couvre de nombreuses fonctions, du stockage de données aux géoservices en passant par le contrôle des périphériques matériels tels que les caméras. Les API sur les plateformes non conventionnelles seront plus intéressantes. Par exemple, à quoi ressemblera l’API entre React Native et les casques de réalité virtuelle ?

Par défaut, les versions iOS et Android de React Native prennent en charge de nombreuses fonctionnalités couramment utilisées et peuvent même prendre en charge n'importe quelle API native asynchrone. React Native rend l'utilisation de l'API de la plate-forme hôte plus facile et plus intuitive, où vous pouvez expérimenter librement. Dans le même temps, veillez à réfléchir à la manière d'adapter l'expérience de la plate-forme cible et à concevoir le processus d'interaction dans votre esprit. Inutile de préciser que le pont de React Native ne peut pas exposer toutes les API de la plateforme hôte.

Si vous devez utiliser une fonctionnalité non prise en charge, vous pouvez l'ajouter vous-même à React Native. De plus, il serait préférable que quelqu'un d'autre l'ait déjà intégré, vous devriez donc vérifier la mise en œuvre dans la communauté en temps opportun. Il convient de noter que l’utilisation des API de la plateforme facilitera également la réutilisation du code. Dans le même temps, les composants React qui implémentent des fonctionnalités spécifiques à la plate-forme sont également spécifiques à la plate-forme.

Isoler et encapsuler ces composants apportera une plus grande flexibilité à votre application. Bien sûr, cela fonctionne également pour vous qui développez des applications Web. Si vous souhaitez partager du code entre React et React Native, n'oubliez pas que les API comme DOM n'existent pas dans React Native.

Recommandations associées : Tutoriel js

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

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.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

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)

La différence entre le multithreading et le C # asynchrone La différence entre le multithreading et le C # asynchrone Apr 03, 2025 pm 02:57 PM

La différence entre le multithreading et l'asynchrone est que le multithreading exécute plusieurs threads en même temps, tandis que les opérations effectuent de manière asynchrone sans bloquer le thread actuel. Le multithreading est utilisé pour les tâches à forte intensité de calcul, tandis que de manière asynchrone est utilisée pour l'interaction utilisateur. L'avantage du multi-threading est d'améliorer les performances informatiques, tandis que l'avantage des asynchrones est de ne pas bloquer les threads d'interface utilisateur. Le choix du multithreading ou asynchrone dépend de la nature de la tâche: les tâches à forte intensité de calcul utilisent le multithreading, les tâches qui interagissent avec les ressources externes et doivent maintenir la réactivité de l'interface utilisateur à utiliser asynchrone.

Quelle est la fonction de la somme du langage C? Quelle est la fonction de la somme du langage C? Apr 03, 2025 pm 02:21 PM

Il n'y a pas de fonction de somme intégrée dans le langage C, il doit donc être écrit par vous-même. La somme peut être obtenue en traversant le tableau et en accumulant des éléments: Version de boucle: la somme est calculée à l'aide de la longueur de boucle et du tableau. Version du pointeur: Utilisez des pointeurs pour pointer des éléments de tableau, et un résumé efficace est réalisé grâce à des pointeurs d'auto-incitation. Allouer dynamiquement la version du tableau: allouer dynamiquement les tableaux et gérer la mémoire vous-même, en veillant à ce que la mémoire allouée soit libérée pour empêcher les fuites de mémoire.

La différence entre char et wchar_t dans le langage C La différence entre char et wchar_t dans le langage C Apr 03, 2025 pm 03:09 PM

Dans le langage C, la principale différence entre Char et WCHAR_T est le codage des caractères: Char utilise ASCII ou étend ASCII, WCHAR_T utilise Unicode; Char prend 1 à 2 octets, WCHAR_T occupe 2-4 octets; Char convient au texte anglais, WCHAR_T convient au texte multilingue; Le char est largement pris en charge, WCHAR_T dépend de la prise en charge du compilateur et du système d'exploitation Unicode; Le char est limité dans la gamme de caractères, WCHAR_T a une gamme de caractères plus grande et des fonctions spéciales sont utilisées pour les opérations arithmétiques.

Y a-t-il une application mobile qui peut convertir XML en PDF? Y a-t-il une application mobile qui peut convertir XML en PDF? Apr 02, 2025 pm 08:54 PM

Une application qui convertit le XML directement en PDF ne peut être trouvée car ce sont deux formats fondamentalement différents. XML est utilisé pour stocker des données, tandis que PDF est utilisé pour afficher des documents. Pour terminer la transformation, vous pouvez utiliser des langages de programmation et des bibliothèques telles que Python et ReportLab pour analyser les données XML et générer des documents PDF.

Quelles sont les exigences de base pour les fonctions de langue C Quelles sont les exigences de base pour les fonctions de langue C Apr 03, 2025 pm 10:06 PM

Les fonctions de langue C sont la base de la modularisation du code et de la construction de programmes. Ils se composent de déclarations (en-têtes de fonction) et de définitions (corps de fonction). Le langage C utilise des valeurs pour transmettre les paramètres par défaut, mais les variables externes peuvent également être modifiées à l'aide d'adresse Pass. Les fonctions peuvent avoir ou ne pas avoir de valeur de retour et le type de valeur de retour doit être cohérent avec la déclaration. La dénomination de la fonction doit être claire et facile à comprendre, en utilisant un chameau ou une nomenclature de soulignement. Suivez le principe de responsabilité unique et gardez la simplicité de la fonction pour améliorer la maintenabilité et la lisibilité.

Quelle est la différence entre la structure de définition des mots clés `var` et« type »dans le langage Go? Quelle est la différence entre la structure de définition des mots clés `var` et« type »dans le langage Go? Apr 02, 2025 pm 12:57 PM

Deux façons de définir les structures dans le langage GO: la différence entre les mots clés VAR et le type. Lorsque vous définissez des structures, GO Language voit souvent deux façons d'écrire différentes: d'abord ...

Comment utiliser XPath pour rechercher à partir d'un nœud DOM spécifié en JavaScript? Comment utiliser XPath pour rechercher à partir d'un nœud DOM spécifié en JavaScript? Apr 04, 2025 pm 11:15 PM

Explication détaillée de la méthode de recherche XPATH sous les nœuds DOM en JavaScript, nous devons souvent trouver des nœuds spécifiques de l'arbre Dom basé sur les expressions XPath. Si vous avez besoin de ...

Quelles sont les différences et les connexions entre C et C #? Quelles sont les différences et les connexions entre C et C #? Apr 03, 2025 pm 10:36 PM

Bien que C et C # aient des similitudes, ils sont complètement différents: C est une gestion manuelle de la mémoire manuelle et un langage dépendant de la plate-forme utilisé pour la programmation système; C # est un langage orienté objet, des ordures et un langage indépendant de la plate-forme utilisé pour le bureau, l'application Web et le développement de jeux.

See all articles