Skip to content

Commit 78ecaa3

Browse files
merging all conflicts
2 parents 851bcd6 + 68f417a commit 78ecaa3

8 files changed

Lines changed: 51 additions & 2 deletions

File tree

src/content/blog/2022/06/15/react-labs-what-we-have-been-working-on-june-2022.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,11 @@ Le 15 juin 2022 par [Andrew Clark](https://twitter.com/acdlite), [Dan Abramov](h
88

99
<Intro>
1010

11+
<<<<<<< HEAD
1112
[React 18](/blog/2022/03/29/react-v18) a pris des années, mais il était porteur de précieuses leçons pour l'équipe React. Sa sortie était l'aboutissement de nombreuses années de recherche, en explorant de nouvelles voies. Certaines de ces tentatives ont réussi ; mais bien davantage se sont révélées des impasses qui nous ont toutefois fourni de nouvelles pistes. Une des leçons que nous en avons tirées, c'est qu'il est frustrant pour la communauté d'attendre la sortie de nouvelles fonctionnalités sans que nous communiquions sur nos travaux.
13+
=======
14+
[React 18](https://react.dev/blog/2022/03/29/react-v18) was years in the making, and with it brought valuable lessons for the React team. Its release was the result of many years of research and exploring many paths. Some of those paths were successful; many more were dead-ends that led to new insights. One lesson we’ve learned is that it’s frustrating for the community to wait for new features without having insight into these paths that we’re exploring.
15+
>>>>>>> 68f417a600c7d7b8c4131e39f8a843a856ae3909
1216
1317
</Intro>
1418

src/content/community/conferences.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@ October 27th 2023. In-person in Verona, Italy and online (hybrid event)
5555

5656
[Site web](https://2023.reactjsday.it/) - [Twitter](https://twitter.com/reactjsday) - [Facebook](https://www.facebook.com/GrUSP/) - [YouTube](https://www.youtube.com/c/grusp)
5757

58-
5958
### React Summit US 2023 {/*react-summit-us-2023*/}
6059
November 13 & 15, 2023. In-person in New York, US + remote first interactivity (hybrid event)
6160

@@ -66,6 +65,11 @@ December 8 & 12, 2023. In-person in Berlin, Germany + remote first interactivity
6665

6766
[Site web](https://reactday.berlin) - [Twitter](https://twitter.com/reactdayberlin) - [Facebook](https://www.facebook.com/reactdayberlin/) - [Vidéos](https://portal.gitnation.org/events/react-day-berlin-2023)
6867

68+
### App.js Conf 2024 {/*appjs-conf-2024*/}
69+
May 22 - 24, 2024. In-person in Kraków, Poland + remote
70+
71+
[Website](https://appjs.co) - [Twitter](https://twitter.com/appjsconf)
72+
6973
### Render(ATL) 2024 🍑 {/*renderatl-2024-*/}
7074
June 12 - June 14, 2024. Atlanta, GA, USA
7175

src/content/learn/referencing-values-with-refs.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,11 @@ Vous n'avez pas non plus à vous préoccuper [d'éviter les mutations](/learn/up
284284

285285
## Les refs et le DOM {/*refs-and-the-dom*/}
286286

287+
<<<<<<< HEAD
287288
Vous pouvez faire pointer votre ref vers ce que vous voulez. Ceci dit, le cas le plus courant pour une ref consiste à accéder à un élément du DOM. C'est par exemple bien pratique pour gérer le focus programmatiquement. Quand vous passez une ref à la prop `ref` d'un élément en JSX, comme dans `<div ref={myRef}>`, React référencera l'élément DOM correspondant dans `myRef.current`. Vous pouvez en apprendre davantage dans [Manipuler le DOM avec des refs](/learn/manipulating-the-dom-with-refs).
289+
=======
290+
You can point a ref to any value. However, the most common use case for a ref is to access a DOM element. For example, this is handy if you want to focus an input programmatically. When you pass a ref to a `ref` attribute in JSX, like `<div ref={myRef}>`, React will put the corresponding DOM element into `myRef.current`. Once the element is removed from the DOM, React will update `myRef.current` to be `null`. You can read more about this in [Manipulating the DOM with Refs.](/learn/manipulating-the-dom-with-refs)
291+
>>>>>>> 68f417a600c7d7b8c4131e39f8a843a856ae3909
288292
289293
<Recap>
290294

src/content/learn/rendering-lists.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1090,7 +1090,11 @@ Dans ce code, `<Recipe {...recipe} key={recipe.id} />` est un raccourci syntaxiq
10901090

10911091
#### Liste avec séparateur {/*list-with-a-separator*/}
10921092

1093+
<<<<<<< HEAD
10931094
Cet exemple affiche un célèbre haïku de Katsushika Hokusai, dont chaque ligne est enrobée par une balise `<p>`. Votre tâche consiste à insérer un séparateur `<hr />` entre chaque paragraphe. La structure finale devrait ressembler à ceci :
1095+
=======
1096+
This example renders a famous haiku by Tachibana Hokushi, with each line wrapped in a `<p>` tag. Your job is to insert an `<hr />` separator between each paragraph. Your resulting structure should look like this:
1097+
>>>>>>> 68f417a600c7d7b8c4131e39f8a843a856ae3909
10941098
10951099
```js
10961100
<article>

src/content/learn/start-a-new-react-project.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,16 @@ Si vous voulez créer une nouvelle appli ou un nouveau site web avec React, nous
2121
**[Next.js](https://nextjs.org/) est un framework React full-stack**. Il est flexible et vous permet de créer des applis React de toute taille--d’un blog essentiellement statique à une appli complexe et dynamique. Pour créer un nouveau projet avec Next.js, exécutez cette commande dans votre terminal :
2222

2323
<TerminalBlock>
24-
npx create-next-app
24+
npx create-next-app@latest
2525
</TerminalBlock>
2626

2727
Si Next.js est nouveau pour vous, consultez le [tutoriel de Next.js](https://nextjs.org/learn/foundations/about-nextjs).
2828

29+
<<<<<<< HEAD
2930
Next.js est maintenu par [Vercel](https://vercel.com/). Vous pouvez [déployer une appli Next.js](https://nextjs.org/docs/deployment) sur tout hébergement *serverless* ou Node.js, ou sur votre propre serveur. Les [applis Next.js pleinement statiques](https://nextjs.org/docs/advanced-features/static-html-export) peuvent être déployées sur tout hébergement statique.
31+
=======
32+
Next.js is maintained by [Vercel](https://vercel.com/). You can [deploy a Next.js app](https://nextjs.org/docs/app/building-your-application/deploying) to any Node.js or serverless hosting, or to your own server. Next.js also supports a [static export](https://nextjs.org/docs/pages/building-your-application/deploying/static-exports) which doesn't require a server.
33+
>>>>>>> 68f417a600c7d7b8c4131e39f8a843a856ae3909
3034
3135
### Remix {/*remix*/}
3236

@@ -89,6 +93,7 @@ Ces fonctionnalités se rapprochent chaque jour un peu plus de la production, et
8993

9094
### Next.js (App Router) {/*nextjs-app-router*/}
9195

96+
<<<<<<< HEAD
9297
**[L'*App Router* de Next.js](https://beta.nextjs.org/docs/getting-started) est une refonte intégrale des API de Next.js qui vise à concrétiser la vision d'architecture full-stack portée par l'équipe de React.** Il vous permet de charger des données dans des composants asynchrones qui s’exécutent sur le serveur ou pendant le *build*.
9398

9499
Next.js est maintenu par [Vercel](https://vercel.com/). Vous pouvez [déployer une appli Next.js](https://nextjs.org/docs/deployment) sur tout hébergement Node.js ou *serverless*, ou sur votre propre serveur. Next.js également prend en charge [l’exportation statique](https://beta.nextjs.org/docs/configuring/static-export) qui ne requiert pas de serveur.
@@ -97,6 +102,11 @@ Next.js est maintenu par [Vercel](https://vercel.com/). Vous pouvez [déployer u
97102
L’App Router de Next.js est **actuellement en beta et n’est pas recommandé pour la production** (en mars 2023). Pour l’expérimenter dans un projet Next.js existant, [suivez ce guide de migration progressive](https://beta.nextjs.org/docs/upgrade-guide#migrating-from-pages-to-app).
98103

99104
</Pitfall>
105+
=======
106+
**[Next.js's App Router](https://nextjs.org/docs) is a redesign of the Next.js APIs aiming to fulfill the React team’s full-stack architecture vision.** It lets you fetch data in asynchronous components that run on the server or even during the build.
107+
108+
Next.js is maintained by [Vercel](https://vercel.com/). You can [deploy a Next.js app](https://nextjs.org/docs/app/building-your-application/deploying) to any Node.js or serverless hosting, or to your own server. Next.js also supports [static export](https://nextjs.org/docs/app/building-your-application/deploying/static-exports) which doesn't require a server.
109+
>>>>>>> 68f417a600c7d7b8c4131e39f8a843a856ae3909
100110
101111
<DeepDive>
102112

src/content/learn/tutorial-tic-tac-toe.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2081,7 +2081,17 @@ export default function Game() {
20812081
}
20822082
```
20832083
2084+
<<<<<<< HEAD
20842085
Vous pouvez voir le résultat ci-dessous. Notez que vous devriez voir une erreur dans la console des outils de développement, qui dit ``Warning: Each child in an array or iterator should have a unique "key" prop. Check the render method of `Game`.`` *(« Avertissement : chaque enfant d'une liste devrait avoir une prop "key" unique. Vérifiez la méthode de rendu de `Game`. », NdT.)* Vous la corrigerez dans la prochaine section.
2086+
=======
2087+
You can see what your code should look like below. Note that you should see an error in the developer tools console that says:
2088+
2089+
<ConsoleBlock level="warning">
2090+
Warning: Each child in an array or iterator should have a unique "key" prop. Check the render method of &#96;Game&#96;.
2091+
</ConsoleBlock>
2092+
2093+
You'll fix this error in the next section.
2094+
>>>>>>> 68f417a600c7d7b8c4131e39f8a843a856ae3909
20852095
20862096
<Sandpack>
20872097

src/content/reference/react/Profiler.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,12 +53,21 @@ function onRender(id, phase, actualDuration, baseDuration, startTime, commitTime
5353

5454
#### Paramètres {/*onrender-parameters*/}
5555

56+
<<<<<<< HEAD
5657
* `id` : la prop textuelle `id` du `<Profiler>` qui vient de boucler son rendu. Elle vous permet d’identifier quelle partie de l’arbre est finalisée lorsque vous utilisez plusieurs profileurs.
5758
* `phase` : `"mount"`, `"update"` ou `"nested-update"`. Ça vous permet de savoir si l’arbre vient d’être monté pour la première fois ou a fait un nouveau rendu suite à un changement dans les props, l’état ou les hooks.
5859
* `actualDuration` : la durée en millisecondes du rendu du `<Profiler>` et de ses enfants pour la mise à jour concernée. Ça indique à quel point vos descendants profitent de la mémoïsation (notamment [`memo`](/reference/react/memo) et [`useMemo`](/reference/react/useMemo)). Idéalement, cette valeur devrait décroître de façon significative après le montage initial car la plupart des descendants ne referont un rendu que si leurs props changent.
5960
* `baseDuration` : une estimation de la durée en millisecondes que prendrait un rendu complet du `<Profiler>` et de ses descendants, sans aucune optimisation. Elle est calculée en ajoutant les durées de rendu les plus récentes de chaque composant concerné. Cette valeur représente le coût maximal de rendu (c’est-à-dire le temps initial de montage sans mémoïsation). Comparez-la avec `actualDuration` pour déterminer si la mémoïsation fonctionne.
6061
* `startTime` : un horodatage numérique du début de la mise à jour par React.
6162
* `endTime` : un horodatage numérique de la fin de la mise à jour par React. Cette valeur est partagée par tous les profileurs d’une même phase de commit, ce qui permet si besoin de les grouper.
63+
=======
64+
* `id`: The string `id` prop of the `<Profiler>` tree that has just committed. This lets you identify which part of the tree was committed if you are using multiple profilers.
65+
* `phase`: `"mount"`, `"update"` or `"nested-update"`. This lets you know whether the tree has just been mounted for the first time or re-rendered due to a change in props, state, or hooks.
66+
* `actualDuration`: The number of milliseconds spent rendering the `<Profiler>` and its descendants for the current update. This indicates how well the subtree makes use of memoization (e.g. [`memo`](/reference/react/memo) and [`useMemo`](/reference/react/useMemo)). Ideally this value should decrease significantly after the initial mount as many of the descendants will only need to re-render if their specific props change.
67+
* `baseDuration`: The number of milliseconds estimating how much time it would take to re-render the entire `<Profiler>` subtree without any optimizations. It is calculated by summing up the most recent render durations of each component in the tree. This value estimates a worst-case cost of rendering (e.g. the initial mount or a tree with no memoization). Compare `actualDuration` against it to see if memoization is working.
68+
* `startTime`: A numeric timestamp for when React began rendering the current update.
69+
* `commitTime`: A numeric timestamp for when React committed the current update. This value is shared between all profilers in a commit, enabling them to be grouped if desirable.
70+
>>>>>>> 68f417a600c7d7b8c4131e39f8a843a856ae3909
6271
6372
---
6473

src/content/reference/react/useMemo.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -650,7 +650,11 @@ Dans cet exemple, le composant `List` est **artificiellement ralenti** pour que
650650

651651
Le changement d'onglet semble lent parce qu'elle force le `List` ralenti à refaire son rendu. On pouvait s'y attendre, puisque l'onglet a changé, vous devez donc refléter le nouveau choix de l'utilisateur à l'écran.
652652

653+
<<<<<<< HEAD
653654
Essayez maintenant de basculer le thème. **Grâce à la combinaison de `useMemo` et [`memo`](/reference/react/memo), c'est rapide en dépit du ralenti artificiel !** `List` a évité un nouveau rendu parce que le tableau `visibleItems` n'a pas changé, dans la mesure où ni `todos` ni `tab` (les dépendances déclarées pour le `useMemo`) n'ont changé depuis le dernier rendu.
655+
=======
656+
Next, try toggling the theme. **Thanks to `useMemo` together with [`memo`](/reference/react/memo), it’s fast despite the artificial slowdown!** The `List` skipped re-rendering because the `visibleTodos` array has not changed since the last render. The `visibleTodos` array has not changed because both `todos` and `tab` (which you pass as dependencies to `useMemo`) haven't changed since the last render.
657+
>>>>>>> 68f417a600c7d7b8c4131e39f8a843a856ae3909
654658
655659
<Sandpack>
656660

0 commit comments

Comments
 (0)