You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/docs/jsx-in-depth.md
+25-25Lines changed: 25 additions & 25 deletions
Original file line number
Diff line number
Diff line change
@@ -47,7 +47,7 @@ React.createElement(
47
47
)
48
48
```
49
49
50
-
Aby przetestować jak JSX jest zamieniany na JavaScript, możesz wypróbować [kompilator Babel online](babel://jsx-simple-example).
50
+
Aby przetestować, jak JSX jest zamieniany na JavaScript, możesz wypróbować [kompilator Babel online](babel://jsx-simple-example).
51
51
52
52
## Określanie typu elementu {#specifying-the-react-element-type}
53
53
@@ -82,7 +82,7 @@ import React from 'react';
82
82
83
83
const MyComponents = {
84
84
DatePicker: function DatePicker(props) {
85
-
return <div>Imagine a {props.color} datepicker here.</div>;
85
+
return <div>Wyobraź sobie, że jest tutaj kalendarz w kolorze {props.color}.</div>;
86
86
}
87
87
}
88
88
@@ -97,20 +97,20 @@ Jeżeli nazwa elementu zaczyna się od małej litery, oznacza to odniesienie do
97
97
98
98
Rekomendujemy używanie wielkich liter w nazwach komponentów. Jeżeli twój komponent ma nazwę rozpoczynającą się od małej litery, przypisz ją do zmiennej, której nazwa zaczyna się od wielkiej litery, zanim użyjesz go w JSX.
99
99
100
-
Na przykład, poniższy kod nie zachowa się tak jak można oczekiwać:
100
+
Na przykład, poniższy kod nie zachowa się tak, jak można by tego oczekiwać:
101
101
102
102
```js{3,4,10,11}
103
103
import React from 'react';
104
104
105
105
// Źle! To jest komponent i jego nazwa powinna zaczynać się wielką literą:
106
106
function hello(props) {
107
-
// Poprawne! To użycie <div> jest poprawne, bo jest on poprawnym, wbudowanym tagiem HTML:
108
-
return <div>Witaj, {props.toWhat}</div>;
107
+
// Dobrze! To użycie <div> jest w porządku, bo jest on poprawnym, wbudowanym tagiem HTML:
108
+
return <div>Witaj, {props.toWhat}</div>;
109
109
}
110
110
111
111
function HelloWorld() {
112
112
// Źle! React traktuje <hello /> jak element wbudowany HTML, bo jego nazwa nie zaczyna się od wielkiej litery:
113
-
return <hello toWhat="Świecie" />;
113
+
return <hello toWhat="Świecie" />;
114
114
}
115
115
```
116
116
@@ -121,13 +121,13 @@ import React from 'react';
121
121
122
122
// Dobrze! To jest komponent, więc powinien mieć nazwę pisaną wielką literą:
123
123
function Hello(props) {
124
-
// Poprawne! To użycie <div> jest poprawne, bo div jest poprawnym elementem HTML:
124
+
// Dobrze! To użycie <div> jest w porządku, bo div jest poprawnym elementem HTML:
125
125
return <div>Witaj, {props.toWhat}</div>;
126
126
}
127
127
128
128
function HelloWorld() {
129
-
// Dobrze! React traktuje <Hello /> jak komponent, bo jego nazwa jest zaczyna się od wielkiej litery:
130
-
return <Hello toWhat="Świecie" />;
129
+
// Dobrze! React traktuje <Hello /> jak komponent, bo jego nazwa zaczyna się od wielkiej litery:
130
+
return <Hello toWhat="Świecie" />;
131
131
}
132
132
```
133
133
@@ -188,11 +188,11 @@ Dla komponentu `MyComponent`, wartość `props.foo` będzie równa `10`, poniewa
188
188
function NumberDescriber(props) {
189
189
let description;
190
190
if (props.number % 2 == 0) {
191
-
description = <strong>even</strong>;
191
+
description = <strong>parzystą</strong>;
192
192
} else {
193
-
description = <i>odd</i>;
193
+
description = <i>nieparzystą</i>;
194
194
}
195
-
return <div>{props.number} is an {description} number</div>;
195
+
return <div>{props.number} jest liczbą {description}</div>;
196
196
}
197
197
```
198
198
@@ -216,7 +216,7 @@ Gdy przekazujesz literał tekstowy, w jego treści zakodowywany jest HTML. Dlate
216
216
<MyComponent message={'<3'} />
217
217
```
218
218
219
-
Zwykle jednak konsekwencje tego zachowania nie są istotne, jednak zostały wspomniane dla kompletności dokumentacji.
219
+
Zwykle jednak konsekwencje tego zachowania nie są istotne, ale zostały wspomniane dla kompletności dokumentacji.
220
220
221
221
### Przekazane właściwości domyślnie mają wartość "true" {#props-default-to-true}
222
222
@@ -230,7 +230,7 @@ Gdy przekażesz atrybut bez jawnego podawania wartości, domyślnie przyjmie on
230
230
231
231
Nie rekomendujemy jednak przekazywania wartości `true` w jawny sposób, bo może być to pomylone ze [skrótowym zapisem definicji obiektu w ES6](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Object_initializer#New_notations_in_ECMAScript_2015)`{foo}`, który jest równoznaczny z `{foo: foo}`, a nie `{foo: true}`. To zachowanie w składni JSX zostało zaimplementowane, żeby odwzorować sposób działania atrybutów HTML.
232
232
233
-
### Właściwości rozszczepione (ang. spread) {#spread-attributes}
233
+
### Właściwości rozszczepione (ang. *spread*) {#spread-attributes}
234
234
235
235
Jeżeli zmienna `props` jest obiektem, a chcesz przekazać ją w JSX, możesz użyć operatora rozszczepienia (`...`). Poniższe implementacje komponentów są równoznaczne:
@@ -279,7 +279,7 @@ W JSX, jeżeli wyrażenie posiada zarówno tag otwierający, jak i zamykający,
279
279
Możesz umieścić łańcuch znaków pomiędzy tagiem otwierającym a zamykającym. Wtedy wartość `props.children` będzie równa przekazanemu łańcuchowi znaków. Jest to szczególnie przydatne w użyciu z niektórymi wbudowanymi elementami HTML. Na przykład:
280
280
281
281
```js
282
-
<MyComponent>Witaj, świecie!</MyComponent>
282
+
<MyComponent>Witaj, świecie!</MyComponent>
283
283
```
284
284
285
285
Powyższy kod jest poprawnym wyrażeniem JSX, a wartość `props.children` w komponencie `MyComponent` będzie równa przekazanemu łańcuchowi znaków `"Witaj, świecie!". HTML zostanie odkodowany, więc możesz pisać w JSX tak, jak w zwykłym HTML-u:
@@ -323,10 +323,10 @@ Przekazywane elementy mogą być różnego typu, a więc możesz używać łańc
323
323
324
324
```html
325
325
<div>
326
-
Here is a list:
326
+
Oto lista:
327
327
<ul>
328
-
<li>Item 1</li>
329
-
<li>Item 2</li>
328
+
<li>Element 1</li>
329
+
<li>Element 2</li>
330
330
</ul>
331
331
</div>
332
332
```
@@ -338,8 +338,8 @@ render() {
338
338
// Nie ma potrzeby otaczać elementów listy dodatkowym elementem JSX!
339
339
return [
340
340
// Pamiętaj o kluczach :)
341
-
<li key="A">Pierwszy</li>,
342
-
<li key="B">Drugi</li>,
341
+
<li key="A">Pierwszy</li>,
342
+
<li key="B">Drugi</li>,
343
343
<li key="C">Trzeci</li>,
344
344
];
345
345
}
@@ -363,7 +363,7 @@ function Item(props) {
363
363
}
364
364
365
365
function TodoList() {
366
-
const todos = ['finish doc', 'submit pr', 'nag dan to review'];
366
+
const todos = ['dokończyć dokumentację', 'wystawić PR-a', 'namówić Dana na review'];
0 commit comments