Skip to content

Commit b1076b0

Browse files
authored
Merge pull request #133 from reactjs/fix/merge-conflicts-2025-02-24
Fix multiple merge conflicts
2 parents ad3ca80 + b0758bb commit b1076b0

File tree

4 files changed

+6
-59
lines changed

4 files changed

+6
-59
lines changed

src/content/learn/installation.md

Lines changed: 4 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -36,38 +36,22 @@ Da isprobate React lokalno na vašem računaru, [preuzmite ovu HTML stranicu](ht
3636

3737
Ako želite da napravite novu React aplikaciju, možete [kreirati React aplikaciju](/learn/creating-a-react-app) pomoću preporučenog framework-a.
3838

39-
<<<<<<< HEAD
40-
## Napravite React framework {/*build-a-react-framework*/}
39+
## Napravite React aplikaciju od nule {/*build-a-react-app-from-scratch*/}
4140

42-
Ako framework nije pogodan za vaš projekat, ili želite da započnete sa pravljenjem sopstvenog framework-a, možete [napraviti sopstveni React framework](/learn/building-a-react-framework).
43-
=======
44-
## Build a React App from Scratch {/*build-a-react-app-from-scratch*/}
45-
46-
If a framework is not a good fit for your project, you prefer to build your own framework, or you just want to learn the basics of a React app you can [build a React app from scratch](/learn/build-a-react-app-from-scratch).
47-
>>>>>>> fc29603434ec04621139738f4740caed89d659a7
41+
Ako framework nije pogodan za vaš projekat, ako želite da napravite sopstveni framework, ili samo želite naučiti osnove React aplikacija, možete [napraviti React aplikaciju od nule](/learn/build-a-react-app-from-scratch).
4842

4943
## Dodajte React u postojeći projekat {/*add-react-to-an-existing-project*/}
5044

5145
Ako želite da isprobate React na vašem postojećem sajtu ili aplikaciji, možete [dodati React u postojeći projekat](/learn/add-react-to-an-existing-project).
5246

53-
<<<<<<< HEAD
54-
## Deprecated opcije {/*deprecated-options*/}
55-
=======
56-
>>>>>>> fc29603434ec04621139738f4740caed89d659a7
5747

5848
<Note>
5949

60-
<<<<<<< HEAD
61-
Create React App je deprecated alat, koji je ranije bio preporučen za kreiranje novih React aplikacija. Ako želite da napravite novu React aplikaciju, možete [kreirati React aplikaciju](/learn/creating-a-react-app) pomoću preporučenog framework-a.
62-
63-
Za više informacija, pogledajte [Gašenje Create React App](/blog/2025/02/14/sunsetting-create-react-app).
64-
=======
65-
#### Should I use Create React App? {/*should-i-use-create-react-app*/}
50+
#### Da li trebam koristiti Create React App? {/*should-i-use-create-react-app*/}
6651

67-
No. Create React App has been deprecated. For more information, see [Sunsetting Create React App](/blog/2025/02/14/sunsetting-create-react-app).
52+
Ne. Create React App je deprecated. Za više informacija, pogledajte [Gašenje Create React App](/blog/2025/02/14/sunsetting-create-react-app).
6853

6954
</Note>
70-
>>>>>>> fc29603434ec04621139738f4740caed89d659a7
7155

7256
## Sledeći koraci {/*next-steps*/}
7357

src/content/learn/render-and-commit.md

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -70,15 +70,9 @@ Zakomentarišite `root.render()` poziv i vidite kako će komponenta nestati!
7070
Kada je komponenta inicijalno renderovana, možete pokrenuti naredne rendere ažuriranjem state-a pomoću [`set` funkcije](/reference/react/useState#setstate). Ažuriranjem state-a vaše komponente automatski stavljate render u red čekanja. (Ovo možete zamisliti kao da gost restorana poručuje čaj, dezert i ostale stvari nakon prve porudžbine, u zavisnosti od state-a žeđi i gladi.)
7171

7272
<IllustrationBlock sequential>
73-
<<<<<<< HEAD
7473
<Illustration caption="Ažuriranje state-a..." alt="React kao konobar u restoranu, servira Card UI korisniku, koji je predstavljen kao čovek sa kursorom na glavi. Korisnik izražava da želi roze karticu, a ne crnu!" src="/images/docs/illustrations/i_rerender1.png" />
7574
<Illustration caption="...pokreće..." alt="React se vraća u Kitchen komponentu i kaže šefu kuhinje za Card da mu treba roze Card." src="/images/docs/illustrations/i_rerender2.png" />
7675
<Illustration caption="...render!" alt="Šef kuhinje za Card daje React-u roze Card." src="/images/docs/illustrations/i_rerender3.png" />
77-
=======
78-
<Illustration caption="State update..." alt="React as a server in a restaurant, serving a Card UI to the user, represented as a patron with a cursor for their head. The patron expresses they want a pink card, not a black one!" src="/images/docs/illustrations/i_rerender1.png" />
79-
<Illustration caption="...triggers..." alt="React returns to the Component Kitchen and tells the Card Chef they need a pink Card." src="/images/docs/illustrations/i_rerender2.png" />
80-
<Illustration caption="...render!" alt="The Card Chef gives React the pink Card." src="/images/docs/illustrations/i_rerender3.png" />
81-
>>>>>>> fc29603434ec04621139738f4740caed89d659a7
8276
</IllustrationBlock>
8377

8478
## Korak 2: React renderuje vaše komponente {/*step-2-react-renders-your-components*/}
@@ -90,11 +84,7 @@ Kada pokrenete render, React poziva vaše komponente da shvati šta da prikaže
9084

9185
Ovaj proces je rekurzivan: ako ažurirana komponenta vrati drugu komponentu, React će renderovati _tu drugu_ komponentu, a ako ta komponenta takođe nešto vrati, renderovaće _to nešto_ sledeće, i tako dalje. Proces će se nastaviti dok god postoje ugnježdene komponente i React zna tačno šta treba biti prikazano na ekranu.
9286

93-
<<<<<<< HEAD
9487
U narednom primeru, React će pozvati `Gallery()` i `Image()` nekoliko puta:
95-
=======
96-
In the following example, React will call `Gallery()` and `Image()` several times:
97-
>>>>>>> fc29603434ec04621139738f4740caed89d659a7
9888

9989
<Sandpack>
10090

@@ -158,17 +148,10 @@ Default ponašanje renderovanja svih komponenti ugnježdenih u ažuriranu kompon
158148

159149
## Korak 3: React commit-uje promene na DOM {/*step-3-react-commits-changes-to-the-dom*/}
160150

161-
<<<<<<< HEAD
162151
Nakon renderovanja (pozivanja) vaših komponenata, React će izmeniti DOM.
163152

164153
* **Za inicijalni render**, React će koristiti [`appendChild()`](https://developer.mozilla.org/docs/Web/API/Node/appendChild) DOM API da postavi sve DOM čvorove koje je kreirao na ekran.
165154
* **Za ponovne rendere**, React će primeniti minimum neophodnih operacija (izračunatih tokom renderovanja!) da bi učinio da se DOM poklapa sa najnovijim rezultatom renderovanja.
166-
=======
167-
After rendering (calling) your components, React will modify the DOM.
168-
169-
* **For the initial render,** React will use the [`appendChild()`](https://developer.mozilla.org/docs/Web/API/Node/appendChild) DOM API to put all the DOM nodes it has created on screen.
170-
* **For re-renders,** React will apply the minimal necessary operations (calculated while rendering!) to make the DOM match the latest rendering output.
171-
>>>>>>> fc29603434ec04621139738f4740caed89d659a7
172155

173156
**React menja DOM čvorove samo ako postoji razlika između rendera.** Na primer, ovde je komponenta koja se ponovo renderuje sa drugačijim props-ima koje dobija od roditelja svake sekunde. Primetite da možete dodati tekst u `<input>`, menjajući `value`, i da taj tekst neće nestati kad se komponenta ponovo renderuje:
174157

src/content/learn/state-a-components-memory.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1452,11 +1452,7 @@ Ako je vaš linter [konfigurisan za React](/learn/editor-setup#linting), trebali
14521452

14531453
#### Ukloniti nepotreban state {/*remove-unnecessary-state*/}
14541454

1455-
<<<<<<< HEAD
1456-
Kada se klikne dugme, ovaj primer treba pitati korisnika da unese ime, a onda da prikaže alert koji ga pozdravlja. Pokušali ste da koristite state da čuvate ime, ali iz nekog razloga uvek se prikazuje "Zdravo, !".
1457-
=======
1458-
When the button is clicked, this example should ask for the user's name and then display an alert greeting them. You tried to use state to keep the name, but for some reason the first time it shows "Hello, !", and then "Hello, [name]!" with the previous input every time after.
1459-
>>>>>>> fc29603434ec04621139738f4740caed89d659a7
1455+
Kada se klikne dugme, ovaj primer treba pitati korisnika da unese ime, a onda da prikaže alert koji ga pozdravlja. Pokušali ste da koristite state da čuvate ime, ali iz nekog razloga prvi put se prikazuje "Zdravo, !", a svaki sledeći put se prikazuje "Zdravo, [ime]!" sa prethodnim input-om.
14601456

14611457
Da biste popravili kod, uklonite nepotrebnu state promenljivu. (Diskutovaćemo zašto [ovo nije radilo](/learn/state-as-a-snapshot) kasnije.)
14621458

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

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -295,11 +295,7 @@ export default function Square() {
295295
}
296296
```
297297

298-
<<<<<<< HEAD
299298
Sekcija *browser* bi trebalo da prikazuje kvadrat sa X u njemu ovako:
300-
=======
301-
The _browser_ section should be displaying a square with an X in it like this:
302-
>>>>>>> fc29603434ec04621139738f4740caed89d659a7
303299

304300
![kvadrat sa X](../images/tutorial/x-filled-square.png)
305301

@@ -921,7 +917,7 @@ Za rad u lokalnom okruženju, React DevTools je dostupan kao ekstenzija za [Chro
921917
922918
Do ovog trenutka, imate sve osnovne građevinske blokove za vašu iks-oks igru. Da biste je kompletirali, potrebno da naizmenično postavljate "X" i "O" na tablu, i potreban vam je način da odredite pobednika.
923919
924-
### Podizanje state-a {/*lifting-state-up*/}
920+
### Podizanje state-a {/*lifting-state-up*/}
925921
926922
Trenutno svaka `Square` component-a čuva deo state-a igre. Da bi se proverilo ko je pobednik u igri iks-oks, `Board` bi morao nekako da zna state svake od 9 `Square` component-i.
927923
@@ -1329,11 +1325,7 @@ Sumirajmo šta se dešava kada korisnik klikne na gornji levi kvadrat na vašoj
13291325
2. Funkcija `handleClick` koristi argument (`0`) da update-uje prvi element array-a `squares` sa `null` na `X`.
13301326
3. State `squares` iz `Board` component-e se update-uje, pa se `Board` i sve njene child component-e ponovo renderuju. Ovo izaziva promenu `value` prop-a component-e `Square` sa indeksom `0` iz `null` u `X`.
13311327
1332-
<<<<<<< HEAD
13331328
Na kraju, korisnik vidi da se gornji levi kvadrat promenio iz praznog u kvadrat sa `X` nakon što je kliknuo na njega.
1334-
=======
1335-
In the end the user sees that the upper left square has changed from empty to having an `X` after clicking it.
1336-
>>>>>>> fc29603434ec04621139738f4740caed89d659a7
13371329
13381330
<Note>
13391331
@@ -1414,11 +1406,7 @@ Ali čekajte, postoji problem. Pokušajte da kliknete na isti kvadrat više puta
14141406
14151407
`X` je prepisan sa `O`! Iako bi ovo moglo dodati veoma zanimljiv preokret igri, za sada ćemo se držati originalnih pravila.
14161408
1417-
<<<<<<< HEAD
14181409
Kada označite kvadrat sa `X` ili `O`, ne proveravate prvo da li kvadrat već ima vrednost `X` ili `O`. Ovo možete popraviti tako što ćete *ranije izaći* iz funkcije. Proverićete da li kvadrat već ima vrednost `X` ili `O`. Ako je kvadrat već popunjen, u funkciji `handleClick` vratićete se rano pomoću `return`—pre nego što funkcija pokuša da update-uje state table.
1419-
=======
1420-
When you mark a square with an `X` or an `O` you aren't first checking to see if the square already has an `X` or `O` value. You can fix this by *returning early*. You'll check to see if the square already has an `X` or an `O`. If the square is already filled, you will `return` in the `handleClick` function early--before it tries to update the board state.
1421-
>>>>>>> fc29603434ec04621139738f4740caed89d659a7
14221410
14231411
```js {2,3,4}
14241412
function handleClick(i) {
@@ -1568,11 +1556,7 @@ Nije važno da li definišete `calculateWinner` pre ili posle `Board` component-
15681556
15691557
</Note>
15701558
1571-
<<<<<<< HEAD
15721559
Pozvaćete `calculateWinner(squares)` u funkciji `handleClick` unutar `Board` component-e kako biste proverili da li je neki igrač pobedio. Ovu proveru možete obaviti istovremeno kada proveravate da li je korisnik kliknuo na kvadrat koji već ima `X` ili `O`. Želeli bismo da se u oba slučaja funkcija završi ranije:
1573-
=======
1574-
You will call `calculateWinner(squares)` in the `Board` component's `handleClick` function to check if a player has won. You can perform this check at the same time you check if a user has clicked a square that already has an `X` or an `O`. We'd like to return early in both cases:
1575-
>>>>>>> fc29603434ec04621139738f4740caed89d659a7
15761560
15771561
```js {2}
15781562
function handleClick(i) {

0 commit comments

Comments
 (0)