Comment écrire des composants React ? (code)
Le contenu de cet article explique comment écrire des composants React ? (code), il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.
Comment écrire un composant React
Dans le monde React, class
est généralement utilisé pour déclarer un composant, qui doit hériter de React.Component
.
Par exemple, le code suivant :
// MyFirstComponent.jsx class MyFirstComponent extends React.Component { state = { text: "Hello React" }; /** 组件生命周期钩子函数:在组件挂载完成后立即被调用 */ componentDidMount() { alert("组件挂载完成!"); } render() { return ( <p>{this.state.text}, I am {this.props.author}!</p> ) } } export default MyFirstComponent;
// index.js import MyFirstComponent from "MyFirstComponent"; /** 渲染结果:<p>Hello React, I am Shaye!</p> */ ReactDOM.render(<MyFirstComponent author="Shaye"></MyFirstComponent>, document.getElementById("app"));
Ce qui précède est une manière conventionnelle d'écrire des composants React, mais on peut aussi trouver plusieurs choses intéressantes en observant le code ci-dessus :
Il y a une fonction- dans
MyFirstComponent
componentDidMount
qui est une fonction de hook du cycle de vie des composants. En fait, React a conçu une série de fonctions de hook de cycle de vie pour les composantsMyFirstComponent
Il contient une fonction spécialerender()
. Cette fonction convertit le contenu du modèle similaire à <.>html
comme valeur de retour. C'est une fonction qui doit être définie, sinonjsx
générera une erreurReact
-
À première vue, cela ressemble à un moteur de modèle, mais c'est en fait un
<.>jsx
Extension de syntaxe, son concept de base est le fameuxJavaScript
, qui est entièrement implémenté à l'intérieur deall in js
. Comme le moteur de modèle traditionnel, il peut également lier des expressionsJavaScript
js
peut clairement être vu comme provenant de deux objets : - et
;
cycle de vie des composantsjsx
est l'état du composant personnalisé interne dethis.state
est externe Les données transmises dansthis.props
sont ; transmis sous forme d'attributs de balises, similaires aux paramètres de fonctionthis.state
MyFirstComponent
this.props
MyFirstComponent
En résumé, lorsque vous maîtrisez le
État d'état du composant Accessoires d'attribut de composant Vous saurez comment écrire des composants React. Cycle de vie des composants
Le document officiel a une introduction très détaillée, je n'entrerai donc pas dans les détails ici. Veuillez cliquer ici pour consulter le document officiel du. cycle de vie des composants.
JSXVous pouvez utiliser expressions arbitrairement à l'intérieur de , et les expressions à l'intérieur de
doivent être placées entre accolades.Par exemple, le code suivant : Les éléments React dans JSX
javaScript
JSX
, tels que
<p className={this.state.clname} style={{ fontSize: "20px" }}>{this.state.content} forever</p>
: JSX
p
javascript object
React fonctionne p
en lisant ces objets et en gardant le contenu des données cohérent. Donc, en fait, vous écrivez toujours object
. Par conséquent,
// 注意: 以下示例是简化过的(不代表在 React 源码中是这样) const pElement = { type: "p", props: { // this.state.clname的值 className: "love", style: { fontSize: "20px" }, // "you"为this.state.content的值 children: ["you", "forever"] } }
Par exemple : DOM
=> js
En particulier, les attributs des éléments React peuvent toujours être cités comme natifs class
pour. définir des attributs avec des valeurs de chaîne, par exemple : style
js
En plus de ce qui précède, les class
Il existe également des différences grammaticales entre la liaison d'événement et le className
natif : font-size: 20px;
{ fontSize: "20px" }
html
className="my-claname"
JSX
html
- État du composant
- est privé et entièrement contrôlé par le composant actuel . Puisqu'il s'agit d'un statut, il faudra le mettre à jour. Comment le mettre à jour ? Exemple de code :
<p onClick={this.handleClick}>我是一个按钮</p> // 也可以向事件回调函数传递参数 <p onClick={(params) => this.handleClick(params)}>我是一个按钮</p>
peut également être transmis aux sous-composants en tant que propriétés Documentation détaillée
state
Les accessoires d'attribut de composant
// 对`this.state`或者它的属性直接`=`赋值,将永远不会触发组件渲染,必须使用`setState()` // 在组件的生命周期钩子函数中调用this.setState() componentDidMount() { this.setState({ content: "lalalala" }) } // 在组件的自定义函数中调用this.setState() handleClick = () => { this.setState({ content: "uauauaua" }) }
sont les données ; transmis depuis le composant parent est généralement setState()
depuis le composant parent ou d'autres variables membres du composant. De plus, state
est en lecture seule et les composants ne peuvent jamais modifier le leur setState()
. Ce n'est qu'après l'appel du composant parent
ne peut être téléchargé que de haut en bas, et les composants ne peuvent modifier que leur propre privé, ce qui signifie que le flux de données de l'ensemble de l'application ne peut être qu'un
flux de données unidirectionnel provenant de de haut en basCycle de vie des composants JSX État de l'état du composant Accessoires d'attribut du composant Plus un ordre descendant vers le flux de données , ce sont les fonctionnalités les plus basiques des composants React ! Recommandations associées : props
state
Résuméprops
props
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

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.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

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)

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de reconnaissance vocale en ligne Introduction : Avec le développement continu de la technologie, la technologie de reconnaissance vocale est devenue une partie importante du domaine de l'intelligence artificielle. Le système de reconnaissance vocale en ligne basé sur WebSocket et JavaScript présente les caractéristiques d'une faible latence, d'un temps réel et d'une multiplateforme, et est devenu une solution largement utilisée. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de reconnaissance vocale en ligne.

WebSocket et JavaScript : technologies clés pour réaliser des systèmes de surveillance en temps réel Introduction : Avec le développement rapide de la technologie Internet, les systèmes de surveillance en temps réel ont été largement utilisés dans divers domaines. L'une des technologies clés pour réaliser une surveillance en temps réel est la combinaison de WebSocket et de JavaScript. Cet article présentera l'application de WebSocket et JavaScript dans les systèmes de surveillance en temps réel, donnera des exemples de code et expliquera leurs principes de mise en œuvre en détail. 1. Technologie WebSocket

Introduction à l'utilisation de JavaScript et de WebSocket pour mettre en œuvre un système de commande en ligne en temps réel : avec la popularité d'Internet et les progrès de la technologie, de plus en plus de restaurants ont commencé à proposer des services de commande en ligne. Afin de mettre en œuvre un système de commande en ligne en temps réel, nous pouvons utiliser les technologies JavaScript et WebSocket. WebSocket est un protocole de communication full-duplex basé sur le protocole TCP, qui peut réaliser une communication bidirectionnelle en temps réel entre le client et le serveur. Dans le système de commande en ligne en temps réel, lorsque l'utilisateur sélectionne des plats et passe une commande

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de réservation en ligne. À l'ère numérique d'aujourd'hui, de plus en plus d'entreprises et de services doivent fournir des fonctions de réservation en ligne. Il est crucial de mettre en place un système de réservation en ligne efficace et en temps réel. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de réservation en ligne et fournit des exemples de code spécifiques. 1. Qu'est-ce que WebSocket ? WebSocket est une méthode full-duplex sur une seule connexion TCP.

JavaScript et WebSocket : Construire un système efficace de prévisions météorologiques en temps réel Introduction : Aujourd'hui, la précision des prévisions météorologiques revêt une grande importance pour la vie quotidienne et la prise de décision. À mesure que la technologie évolue, nous pouvons fournir des prévisions météorologiques plus précises et plus fiables en obtenant des données météorologiques en temps réel. Dans cet article, nous apprendrons comment utiliser la technologie JavaScript et WebSocket pour créer un système efficace de prévisions météorologiques en temps réel. Cet article démontrera le processus de mise en œuvre à travers des exemples de code spécifiques. Nous

Tutoriel JavaScript : Comment obtenir le code d'état HTTP, des exemples de code spécifiques sont requis Préface : Dans le développement Web, l'interaction des données avec le serveur est souvent impliquée. Lors de la communication avec le serveur, nous devons souvent obtenir le code d'état HTTP renvoyé pour déterminer si l'opération a réussi et effectuer le traitement correspondant en fonction de différents codes d'état. Cet article vous apprendra comment utiliser JavaScript pour obtenir des codes d'état HTTP et fournira quelques exemples de codes pratiques. Utilisation de XMLHttpRequest

Utilisation : En JavaScript, la méthode insertBefore() est utilisée pour insérer un nouveau nœud dans l'arborescence DOM. Cette méthode nécessite deux paramètres : le nouveau nœud à insérer et le nœud de référence (c'est-à-dire le nœud où le nouveau nœud sera inséré).

JavaScript est un langage de programmation largement utilisé dans le développement Web, tandis que WebSocket est un protocole réseau utilisé pour la communication en temps réel. En combinant les puissantes fonctions des deux, nous pouvons créer un système efficace de traitement d’images en temps réel. Cet article présentera comment implémenter ce système à l'aide de JavaScript et WebSocket, et fournira des exemples de code spécifiques. Tout d’abord, nous devons clarifier les exigences et les objectifs du système de traitement d’images en temps réel. Supposons que nous disposions d'un appareil photo capable de collecter des données d'image en temps réel.
