Skip to content

Commit

Permalink
fix: transtlate to fix
Browse files Browse the repository at this point in the history
  • Loading branch information
burakcihan61 committed Oct 1, 2023
1 parent 6a4062a commit 8ea8b4e
Showing 1 changed file with 19 additions and 19 deletions.
38 changes: 19 additions & 19 deletions src/content/learn/separating-events-from-effects.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ function ChatRoom({ roomId }) {
}
```

Bunlar gibi reaktif değerler yeniden oluşturma nedeniyle değişebilir. Örneğin, kullanıcı `mesaj`ı düzenleyebilir veya bir açılır menüde farklı bir `odaId` seçebilir. Olay yöneticileri ve Efektler değişikliklere farklı şekilde yanıt verir:
Bunlar gibi reaktif değerler yeniden oluşturma nedeniyle değişebilir. Örneğin, kullanıcı `message`ı düzenleyebilir veya bir açılır menüde farklı bir `roomId` seçebilir. Olay yöneticileri ve Efektler değişikliklere farklı şekilde yanıt verir:

- **Olay yöneticilerinin içindeki mantık * reaktif değildir.*** Kullanıcı aynı etkileşimi (örneğin bir tıklama) tekrar gerçekleştirmedikçe tekrar çalışmayacaktır. Olay yöneticileri, değişikliklerine "tepki vermeden" reaktif değerleri okuyabilir.
- **Efektlerin içindeki mantık *reaktiftir.*** Efektiniz reaktif bir değeri okuyorsa, [bunu bir bağımlılık olarak belirtmeniz gerekir](/learn/lifecycle-of-reactive-effects#effects-react-to-reactive-values) Ardından, bir yeniden oluşturma bu değerin değişmesine neden olursa, React, Efektinizin mantığını yeni değerle yeniden çalıştıracaktır.
Expand All @@ -189,7 +189,7 @@ Bu farkı göstermek için bir önceki örneğe geri dönelim.
// ...
```

Kullanıcının bakış açısından, **`mesaj`'da yapılan bir değişiklik, mesaj göndermek istedikleri anlamına gelmez.** Bu sadece kullanıcının yazmakta olduğu anlamına gelir. Başka bir deyişle, mesaj gönderen mantık reaktif olmamalıdır. Sadece <CodeStep step={2}>reactive value</CodeStep> değiştiği için tekrar çalışmamalıdır. Bu yüzden olay yöneticisine aittir:
Kullanıcının bakış açısından, **`message`'da yapılan bir değişiklik, mesaj göndermek istedikleri anlamına gelmez.** Bu sadece kullanıcının yazmakta olduğu anlamına gelir. Başka bir deyişle, mesaj gönderen mantık reaktif olmamalıdır. Sadece <CodeStep step={2}>reactive value</CodeStep> değiştiği için tekrar çalışmamalıdır. Bu yüzden olay yöneticisine aittir:

```js {2}
function handleSendClick() {
Expand Down Expand Up @@ -224,7 +224,7 @@ Kullanıcının bakış açısından, **`roomId`'deki bir değişiklik farklı b

Efektler reaktiftir, bu nedenle `createConnection(serverUrl, roomId)` ve `connection.connect()`, `roomId`nin her farklı değeri için çalışacaktır. Efektiniz sohbet bağlantısını o anda seçili olan odayla senkronize tutar.

## Reaktif olmayan mantığı Effects'ten çıkarma {/*extracting-non-reactive-logic-out-of-effects*/}
## Reaktif olmayan mantığı Efektlerden çıkarma {/*extracting-non-reactive-logic-out-of-effects*/}

Reaktif mantığı reaktif olmayan mantıkla karıştırmak istediğinizde işler daha da zorlaşır.

Expand All @@ -248,7 +248,7 @@ function ChatRoom({ roomId, theme }) {
useEffect(() => {
const connection = createConnection(serverUrl, roomId);
connection.on('connected', () => {
showNotification('Bağlı!', theme);
showNotification('Bağlandı!', theme);
});
connection.connect();
return () => {
Expand Down Expand Up @@ -290,7 +290,7 @@ function ChatRoom({ roomId, theme }) {
useEffect(() => {
const connection = createConnection(serverUrl, roomId);
connection.on('connected', () => {
showNotification('Bağlı!', theme);
showNotification('Baglandi!', theme);
});
connection.connect();
return () => connection.disconnect();
Expand Down Expand Up @@ -351,7 +351,7 @@ export function createConnection(serverUrl, roomId) {
throw Error('İşleyici iki kez eklenemiyor.');
}
if (event !== 'connected') {
throw Error('Yalnızca "bağlı" olayı desteklenir.');
throw Error('Yalnızca "connected" olayı desteklenir.');
}
connectedCallback = callback;
},
Expand Down Expand Up @@ -392,7 +392,7 @@ Başka bir deyişle, bir Efektin (reaktif olan) içinde olmasına rağmen bu sat
```js
// ...
showNotification('Bağlı!', theme);
showNotification('Bağlandı!', theme);
// ...
```
Expand All @@ -406,14 +406,14 @@ Bu bölümde, React'in kararlı bir sürümünde henüz yayınlanmamış **deney
</Wip>
Bu reaktif olmayan mantığı Efektinizden çıkarmak için [`useEffectEvent`](/reference/react/experimental_useEffectEvent) adlı özel bir Kanca kullanın:
Bu reaktif olmayan mantığı Efektinizden çıkarmak için [`useEffectEvent`](/reference/react/experimental_useEffectEvent) adlı özel bir Hook kullanın:
```js {1,4-6}
import { useEffect, useEffectEvent } from 'react';

function ChatRoom({ roomId, theme }) {
const onConnected = useEffectEvent(() => {
showNotification('Bağlı!', theme);
showNotification('Baglandi!', theme);
});
// ...
```
Expand All @@ -425,7 +425,7 @@ Artık `onConnected` Efekt olayını Efektinizin içinden çağırabilirsiniz:
```js {2-4,9,13}
function ChatRoom({ roomId, theme }) {
const onConnected = useEffectEvent(() => {
showNotification('Bağlı!', theme);
showNotification('Baglandi!', theme);
});

useEffect(() => {
Expand Down Expand Up @@ -472,7 +472,7 @@ const serverUrl = 'https://localhost:1234';

function ChatRoom({ roomId, theme }) {
const onConnected = useEffectEvent(() => {
showNotification('Bağlı!', theme);
showNotification('Baglandi!', theme);
});

useEffect(() => {
Expand Down Expand Up @@ -539,7 +539,7 @@ export function createConnection(serverUrl, roomId) {
throw Error('İşleyici iki kez eklenemiyor.');
}
if (event !== 'connected') {
throw Error('Yalnızca "bağlı" olayı desteklenir.');
throw Error('Yalnızca "connected" olayı desteklenir.');
}
connectedCallback = callback;
},
Expand Down Expand Up @@ -574,7 +574,7 @@ label { display: block; margin-top: 10px; }
</Sandpack>
Efekt olaylarını olay yöneticilerine çok benzer olarak düşünebilirsiniz. Temel fark, olay yöneticilerin kullanıcı etkileşimlerine yanıt olarak çalışması, Efekt olaylarının ise sizin tarafınızdan Efektlerden tetiklenmesidir. Efekt olayları, Efektlerin tepkiselliği ile tepkisel olmaması gereken kod arasındaki "zinciri kırmanızı" sağlar.
Efekt olaylarını olay yöneticilerine çok benzer olarak düşünebilirsiniz. Temel fark, olay işleyicilerinin kullanıcı etkileşimlerine yanıt olarak çalışması, Efekt olaylarının ise sizin tarafınızdan Efektlerden tetiklenmesidir. Efekt olayları, Efektlerin tepkiselliği ile tepkisel olmaması gereken kod arasındaki "zinciri kırmanızı" sağlar.
### Efekt olayları ile en son propları ve state okuma {/*reading-latest-props-and-state-with-effect-events*/}
Expand Down Expand Up @@ -697,7 +697,7 @@ Bu, özellikle Efekt içinde bazı asenkron mantık varsa önemli hale gelir:
useEffect(() => {
setTimeout(() => {
onVisit(url);
}, 5000); // Gecikmeli kayıt ziyaretleri
}, 5000); // Ziyaretleri kaydetmeyi geciktirin
}, [url]);
```

Expand Down Expand Up @@ -884,7 +884,7 @@ Bu bölümde, React'in kararlı bir sürümünde henüz yayınlanmamış **deney
</Wip>
Efekt olaylarını nasıl kullanabileceğiniz çok sınırlıdır:
Efekt Olayları, kullanma şekliniz açısından oldukça sınırlıdır:
* **Sadece Efektlerin içinden çağırın.**
* **Asla diğer bileşenlere veya Hook'lara aktarmayın.**
Expand All @@ -899,7 +899,7 @@ function Timer() {
setCount(count + 1);
});

useTimer(onTick, 1000); // 🔴 Kaçının: Geçme Efekti Olayları
useTimer(onTick, 1000); // 🔴 Kaçının: Efekt olaylarini geçmek

return <h1>{count}</h1>
}
Expand Down Expand Up @@ -1518,7 +1518,7 @@ export function createConnection(serverUrl, roomId) {
throw Error('İşleyici iki kez eklenemiyor.');
}
if (event !== 'connected') {
throw Error('Yalnızca "bağlı" olayı desteklenir.');
throw Error('Yalnızca "connected" olayı desteklenir.');
}
connectedCallback = callback;
},
Expand Down Expand Up @@ -1659,7 +1659,7 @@ export function createConnection(serverUrl, roomId) {
throw Error('İşleyici iki kez eklenemiyor.');
}
if (event !== 'connected') {
throw Error('Yalnızca "bağlı" olayı desteklenir.');
throw Error('Yalnızca "connected" olayı desteklenir.');
}
connectedCallback = callback;
},
Expand Down Expand Up @@ -1802,7 +1802,7 @@ export function createConnection(serverUrl, roomId) {
throw Error('İşleyici iki kez eklenemiyor.');
}
if (event !== 'connected') {
throw Error('Yalnızca "bağlı" olayı desteklenir.');
throw Error('Yalnızca "connected" olayı desteklenir.');
}
connectedCallback = callback;
},
Expand Down

0 comments on commit 8ea8b4e

Please sign in to comment.