


Comment modifier dynamiquement le style dans React?: 1. Ajoutez une référence à l'élément dont le style doit être modifié, avec une syntaxe telle que "
L'environnement d'exploitation de ce tutoriel : système Windows 10, React version 18.0.0, ordinateur Dell G3.
Comment modifier dynamiquement le style en réaction ?
Environ trois fa?ons pour React de modifier dynamiquement les styles d'éléments
React pour modifier dynamiquement les styles d'éléments
Il existe deux manières courantes pour React de modifier dynamiquement les styles d'éléments?: utiliser ref et modifier le style des éléments via le contr?le dynamique de changements d'état
1. Utilisez ref pour modifier dynamiquement le style
Ajoutez une référence sur l'élément qui doit être modifié
<div className='scroll-title clear-fix' ref={ this.manage }>Ajoutez React.createRef() dans le constructeur
this.manage = React.createRef()Utilisez-le dans le code logique
this.manage.current.style.display = 'block'Si le code Si cela ne peut pas être reconnu, vous devez changer le pointeur de this via let that = this
that.manage.current.style.display = 'block'2. Modifier le style de l'élément grace au contr?le dynamique des changements d'état (deux manières)
Méthode 1
Définir dans le code logique Un indicateur affiche par défaut la valeur true ou false selon les conditions correspondantes, puis attribuez le nom de style correspondant à l'attribut className du DOM. Le style est écrit dans le style correspondant. Par exemple?:
constructor() { super() this.state = { display: true } } componentDidMount() { window.onscroll = function(event) { if (divTop < -12) { that.setState({ display: false }) that.manage.current.style.display = 'block' } else { that.setState({ display: true }) } } }Méthode 2<div className={this.state.display ? 'none' : 'scroll-title }>Le principe de la méthode 2 est le même que celui de la méthode 1. Définissez l'affichage d'un bit d'indicateur dans le code logique pour qu'il soit vrai. par défaut, changez la valeur d'affichage en true ou false via les conditions correspondantes, puis modifiez le nom de style correspondant. Le nom de style est attribué à l'attribut className du DOM et le style est écrit dans le style correspondant. La différence est que le. le code logique n'est pas jugé dans le DOM, mais en js, comme suit?:
3 Par Utiliser le code JS (opérateur ternaire) dans le DOM
pour réaliser l'affichage et le masquage de la conversion des différents DOM
. La méthode 3 ne change pas le style au sens strict, elle sert juste à changer l'affichage, masquer et afficher les composants correspondants
Pour résumer :
Si les styles modifiés sont de plus en plus complexes , utilisez 2
- Si les styles modifiés ne sont pas trop nombreux, utilisez 1 et 2
- S'il ne s'agit que d'un commutateur de deux composants (affiché avec Caché) Il est plus pratique d'utiliser 3
Problème de conflit de style de réactionIl existe déjà une configuration sass dans l'échafaudage de réaction, il vous suffit donc d'installer le package de dépendances sass, et vous pouvez utiliser sass directement
Installez le package de dépendances sass
npm i sass -D- Remplacez index.css par index. scss- Importez le fichier index.scss
Remarque : Si scss est utilisé, vous devez ajouter ~ lors de l'utilisation du chemin absolu de l'image dans scss~
background-image: url(~assets/login.png);css -Style privatisationcss modules-Basic utilisation
étapes1. Changez le nom du fichier de style. De xx.scss -> xx.module.scss (convention dans l'échafaudage React, distinguée du CSS ordinaire)
2.
Importez le fichier de style dans le composant (notez la syntaxe)import styles from './index.module.scss'Accédez au nom du style dans l'objet via l'objet styles pour définir le style<div className={styles.css類名}></div>Le nom de la classe CSS est défini dans index.module.scss Nom de la classe.ExempleDéfinir le style index.module.css
.root {font-size: 100px;}
Utiliser les stylesimport styles from './index.module.css' <div className={styles.root}>div的內(nèi)容</div>PrincipeCS S Modules par automatiquement Nom de classe Compléter le nom de classe pour garantir l'unicité du nom de classe, évitant ainsi le problème de conflit de style
Notes sur le module CSSIl est préférable d'utiliser la dénomination en casse chameau pour les noms de classe, car le nom de classe final générera un attribut de styles
cssModules- Conserver le nom de la classe
FormatDans xxx.module.scss, si vous souhaitez conserver le nom de la classe, vous pouvez utiliser le format?:
:global(.classname)
/*這樣css modules就不會(huì)修改掉類名.a了。等價(jià)于寫在 index.css中 */ :global(.a) { } /* 這樣css modules就不會(huì)修改掉類名.a了, 但是 .aa還是會(huì)被修改 */ .aa :golbal(.a) { }remplacer le style des composants tiers
:global(.ant-btn) { color: red !important; }modules CSS-Best Practice- Le n?ud racine de chaque composant utilise un nom de classe sous la forme de CSSModules (nom de classe de l'élément racine : root )
- Tous les autres n?uds enfants utilisent des noms de classe CSS ordinaires?: utilisez le composant
// index.module.scss .root { display: 'block'; position: 'absolute'; // 此處,使用 global 包裹其他子節(jié)點(diǎn)的類名。此時(shí),這些類名就不會(huì)被處理,在 JSX 中使用時(shí),就可以用字符串形式的類名 // 如果不加 :global ,所有類名就必須添加 styles.title 才可以 :global { .title { .text { } span { } } .login-form { ... } } }dans global
index.module.scssimport styles from './index.module.scss' const 組件 = () => { return ( {/* (1) 根節(jié)點(diǎn)使用 CSSModules 形式的類名( 根元素的類名: `root` )*/}{/* (2) 所有子節(jié)點(diǎn),都使用普通的 CSS 類名*/}) }登錄 登錄
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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

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

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

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

NetflixUSESACustomFrameworkCalled "gibbon" builtonReact, notreactorVueDirectly.1) teamExperience: ChoOsBasedOnFamiliarity.

L'écosystème React comprend des bibliothèques de gestion d'état (telles que Redux), des bibliothèques de routage (telles que Reactrouter), des bibliothèques de composants d'interface utilisateur (telles que Material-UI), des outils de test (tels que la plaisanterie) et de la construction d'outils (tels que WebPack). Ces outils fonctionnent ensemble pour aider les développeurs à développer et à maintenir efficacement les applications, à améliorer la qualité du code et l'efficacité de développement.

Netflix utilise React comme cadre frontal. 1) Le modèle de développement composant de React et un écosystème fort sont les principales raisons pour lesquelles Netflix l'a choisi. 2) Grace à la composante, Netflix divise les interfaces complexes en morceaux gérables tels que les lecteurs vidéo, les listes de recommandations et les commentaires des utilisateurs. 3) Le cycle de vie virtuel et composant virtuel de React optimise l'efficacité du rendu et la gestion de l'interaction des utilisateurs.

React est une bibliothèque JavaScript développée par Meta pour la création d'interfaces utilisateur, avec son c?ur étant le développement des composants et la technologie DOM virtuelle. 1. Gestion des composants et de l'état: React gère l'état à travers les composants (fonctions ou classes) et les crochets (tels que UseState), améliorant la réutilisabilité et la maintenance du code. 2. Dom virtuel et optimisation des performances: via Virtual Dom, React met à jour efficacement le DOM réel pour améliorer les performances. 3. Cycle de vie et crochets: les crochets (tels que l'utilisation d'effet) permettent aux composants de la fonction de gérer les cycles de vie et d'effectuer des opérations à effet secondaire. 4. Exemple d'utilisation: des composants de Basic Helloworld à la gestion avancée de l'état mondial (UseContext et

L'avenir de React se concentrera sur l'ultime dans le développement des composants, l'optimisation des performances et l'intégration profonde avec d'autres piles technologiques. 1) React simplifiera encore la création et la gestion des composants et promouvra l'ultime dans le développement des composants. 2) L'optimisation des performances deviendra le centre d'attention, en particulier dans les grandes applications. 3) React sera profondément intégré à des technologies telles que GraphQL et TypeScript pour améliorer l'expérience de développement.

Les avantages de React sont sa flexibilité et son efficacité, qui se reflètent dans: 1) la conception basée sur les composants améliore la réutilisabilité du code; 2) La technologie DOM virtuelle optimise les performances, en particulier lors de la gestion de grandes quantités de mises à jour de données; 3) L'écosystème riche fournit un grand nombre de bibliothèques et d'outils tiers. En comprenant comment React fonctionne et utilise des exemples, vous pouvez ma?triser ses concepts principaux et les meilleures pratiques pour créer une interface utilisateur efficace et maintenable.

Netflix utilise principalement React comme cadre frontal, complété par Vue pour des fonctions spécifiques. 1) La composante de React et le DOM virtuel améliorent l'efficacité des performances et du développement des applications Netflix. 2) Vue est utilisée dans les outils internes et les petits projets de Netflix, et sa flexibilité et sa facilité d'utilisation sont essentielles.

React est un cadre frontal pour la construction d'interfaces utilisateur; Un framework back-end est utilisé pour créer des applications c?té serveur. React fournit des mises à jour d'interface utilisateur composentisées et efficaces, et le framework backend fournit une solution de service backend complète. Lors du choix d'une pile technologique, les exigences du projet, les compétences en équipe et l'évolutivité doivent être prises en compte.
