Skip to content

Commit 91202ee

Browse files
authored
Translate 'Fragments' page (#102)
1 parent 9e86787 commit 91202ee

File tree

1 file changed

+30
-30
lines changed

1 file changed

+30
-30
lines changed

content/docs/fragments.md

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
---
22
id: fragments
3-
title: Fragments
3+
title: Fragmenty
44
permalink: docs/fragments.html
55
---
66

7-
A common pattern in React is for a component to return multiple elements. Fragments let you group a list of children without adding extra nodes to the DOM.
7+
Często spotykanym wzorcem w Reakcie jest tworzenie komponentów, które zwracają wiele elementów. Fragmenty pozwalają zgrupować listę potomków bez konieczności dodawania zbędnych węzłów do drzewa DOM.
88

99
```js
1010
render() {
@@ -18,11 +18,11 @@ render() {
1818
}
1919
```
2020

21-
There is also a new [short syntax](#short-syntax) for declaring them, but it isn't supported by all popular tools yet.
21+
Istnieje również nowy [skrócony zapis](#short-syntax) do deklarowania fragmentów, jednak nie jest on jeszcze wspierany przez wszystkie popularne narzędzia.
2222

23-
## Motivation {#motivation}
23+
## Motywacja {#motivation}
2424

25-
A common pattern is for a component to return a list of children. Take this example React snippet:
25+
Zdarza się, że potrzebujemy w komponencie zwrócić listę potomków. Rozważmy poniższy przykład:
2626

2727
```jsx
2828
class Table extends React.Component {
@@ -38,93 +38,93 @@ class Table extends React.Component {
3838
}
3939
```
4040

41-
`<Columns />` would need to return multiple `<td>` elements in order for the rendered HTML to be valid. If a parent div was used inside the `render()` of `<Columns />`, then the resulting HTML will be invalid.
41+
Aby zapewnić poprawność wyrenderowanego kodu HTML, komponent `<Columns />` powinien zwrócić kilka elementów `<td>`. Gdyby komórki tabeli, zwracane przez funkcję `render()` komponentu `<Columns />`, otoczyć np. elementem `<div>`, powstały w ten sposób kod HTML byłby nieprawidłowy.
4242

4343
```jsx
4444
class Columns extends React.Component {
4545
render() {
4646
return (
4747
<div>
48-
<td>Hello</td>
49-
<td>World</td>
48+
<td>Witaj</td>
49+
<td>Świecie</td>
5050
</div>
5151
);
5252
}
5353
}
5454
```
5555

56-
results in a `<Table />` output of:
56+
daje w rezultacie następującą strukturę dla komponentu `<Table />`:
5757

5858
```jsx
5959
<table>
6060
<tr>
6161
<div>
62-
<td>Hello</td>
63-
<td>World</td>
62+
<td>Witaj</td>
63+
<td>Świecie</td>
6464
</div>
6565
</tr>
6666
</table>
6767
```
6868

69-
Fragments solve this problem.
69+
Fragmenty rozwiązują ten problem.
7070

71-
## Usage {#usage}
71+
## Użycie {#usage}
7272

7373
```jsx{4,7}
7474
class Columns extends React.Component {
7575
render() {
7676
return (
7777
<React.Fragment>
78-
<td>Hello</td>
79-
<td>World</td>
78+
<td>Witaj</td>
79+
<td>Świecie</td>
8080
</React.Fragment>
8181
);
8282
}
8383
}
8484
```
8585

86-
which results in a correct `<Table />` output of:
86+
daje w rezultacie następującą strukturę dla komponentu `<Table />`:
8787

8888
```jsx
8989
<table>
9090
<tr>
91-
<td>Hello</td>
92-
<td>World</td>
91+
<td>Witaj</td>
92+
<td>Świecie</td>
9393
</tr>
9494
</table>
9595
```
9696

97-
### Short Syntax {#short-syntax}
97+
### Skrócony zapis {#short-syntax}
9898

99-
There is a new, shorter syntax you can use for declaring fragments. It looks like empty tags:
99+
Istnieje nowy, krótszy zapis służący do deklarowania fragmentów. Z wyglądu przypomina puste znaczniki:
100100

101101
```jsx{4,7}
102102
class Columns extends React.Component {
103103
render() {
104104
return (
105105
<>
106-
<td>Hello</td>
107-
<td>World</td>
106+
<td>Witaj</td>
107+
<td>Świecie</td>
108108
</>
109109
);
110110
}
111111
}
112112
```
113113

114-
You can use `<></>` the same way you'd use any other element except that it doesn't support keys or attributes.
114+
Możesz używać `<></>` tak samo, jak innych komponentów. Nie możesz jednak przekazywać do niego klucza (`key`) ani żadnych innych właściwości.
115115

116-
Note that **[many tools don't support it yet](/blog/2017/11/28/react-v16.2.0-fragment-support.html#support-for-fragment-syntax)** so you might want to explicitly write `<React.Fragment>` until the tooling catches up.
116+
Zwróć uwagę, że **[wiele narzędzi nie posiada jeszcze wsparcia dla tego zapisu](/blog/2017/11/28/react-v16.2.0-fragment-support.html#support-for-fragment-syntax)**. Do czasu jego dodania pisz po prostu `<React.Fragment>`.
117117

118-
### Keyed Fragments {#keyed-fragments}
118+
### Fragmenty z kluczem {#keyed-fragments}
119119

120-
Fragments declared with the explicit `<React.Fragment>` syntax may have keys. A use case for this is mapping a collection to an array of fragments -- for example, to create a description list:
120+
Fragmenty zadeklarowane jawnie przy użyciu składni `<React.Fragment>` mogą posiadać klucze. Ma to zastosowanie, gdy zechcesz przemapować kolekcję na tablicę fragmentów -- na przykład do stworzenia listy opisów:
121121

122122
```jsx
123123
function Glossary(props) {
124124
return (
125125
<dl>
126126
{props.items.map(item => (
127-
// Without the `key`, React will fire a key warning
127+
// Bez `key` React wyrzuci błąd
128128
<React.Fragment key={item.id}>
129129
<dt>{item.term}</dt>
130130
<dd>{item.description}</dd>
@@ -135,8 +135,8 @@ function Glossary(props) {
135135
}
136136
```
137137

138-
`key` is the only attribute that can be passed to `Fragment`. In the future, we may add support for additional attributes, such as event handlers.
138+
`key` jest jedyną właściwością, którą można przekazać do fragmentu. Możliwe, że w przyszłości dodamy wsparcie dla innych właściwości, np. procedur obsługi zdarzeń.
139139

140-
### Live Demo {#live-demo}
140+
### Demo {#live-demo}
141141

142-
You can try out the new JSX fragment syntax with this [CodePen](https://codepen.io/reactjs/pen/VrEbjE?editors=1000).
142+
Możesz wypróbować nową składnię JSX dla fragmentów na tym [CodePenie](https://codepen.io/reactjs/pen/VrEbjE?editors=1000).

0 commit comments

Comments
 (0)