diff --git a/pages/docs/mutation.en-US.md b/pages/docs/mutation.en-US.md index 5e65da31..9aa70b9c 100644 --- a/pages/docs/mutation.en-US.md +++ b/pages/docs/mutation.en-US.md @@ -1,5 +1,17 @@ # Mutation +```js +mutate(key, data, options) +``` + +## Options + +- `optimisticData`: data to immediately update the client cache, usually used in optimistic UI. +- `revalidate`: should the cache revalidate once the asynchronous update resolves. +- `populateCache`: should the result of the remote mutation be written to the cache. +- `populateCache`: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. +- `rollbackOnError`: should the cache rollback if the remote mutation errors. + ## Revalidate You can get the `mutate` function from the `useSWRConfig()` hook, and broadcast a revalidation message @@ -68,16 +80,6 @@ function Profile () { > The **`updateFn`** should be a promise or asynchronous function to handle the remote mutation, it should return updated data. -**Available Options** - -**`optimisticData`**: data to immediately update the client cache, usually used in optimistic UI. - -**`revalidate`**: should the cache revalidate once the asynchronous update resolves. - -**`populateCache`**: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. - -**`rollbackOnError`**: should the cache rollback if the remote mutation errors. - ## Mutate Based on Current Data Sometimes, you want to update a part of your data based on the current data. diff --git a/pages/docs/mutation.es-ES.md b/pages/docs/mutation.es-ES.md index 4af73578..6f9aa493 100644 --- a/pages/docs/mutation.es-ES.md +++ b/pages/docs/mutation.es-ES.md @@ -1,5 +1,16 @@ # Mutación +```js +mutate(key, data, options) +``` + +## Options + +- `optimisticData`: data to immediately update the client cache, usually used in optimistic UI. +- `revalidate`: should the cache revalidate once the asynchronous update resolves. +- `populateCache`: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. +- `rollbackOnError`: should the cache rollback if the remote mutation errors. + ## Revalidar You can get the `mutate` function from the `useSWRConfig()` hook, and broadcast a revalidation message @@ -66,16 +77,6 @@ function Profile () { > The **`updateFn`** should be a promise or asynchronous function to handle the remote mutation, it should return updated data. -**Available Options** - -**`optimisticData`**: data to immediately update the client cache, usually used in optimistic UI. - -**`revalidate`**: should the cache revalidate once the asynchronous update resolves. - -**`populateCache`**: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. - -**`rollbackOnError`**: should the cache rollback if the remote mutation errors. - ## Mutar basándose en los datos actuales A veces, se desea actualizar una parte de los datos en función de los datos actuales. diff --git a/pages/docs/mutation.ja.md b/pages/docs/mutation.ja.md index a7a6b2b3..2e2bace2 100644 --- a/pages/docs/mutation.ja.md +++ b/pages/docs/mutation.ja.md @@ -1,5 +1,16 @@ # ミューテーション +```js +mutate(key, data, options) +``` + +## オプション + +- `optimisticData`: クライアントキャッシュを直ちに更新するデータで、通常は 楽観的な UI で使用されます。 +- `revalidate`: 非同期更新が解決した後、キャッシュを再検証するかどうか。 +- `populateCache`: リモートミューテーションの結果をキャッシュに書き込むかどうか。関数も受け取ります。関数はミューテーションの結果と現在の値を引数として受けとり、ミューテーションの結果を返します。 +- `rollbackOnError`: リモートミューテーションでエラーが発生した場合、キャッシュをロールバックするかどうか。 + ## 再検証 `useSWRConfig()` フックから `mutate` 関数を取得し、`mutate(key)` を呼び出すことで、 @@ -68,16 +79,6 @@ function Profile () { > **`updateFn`** は、リモートミューテーションを処理するための promise 関数か非同期関数でなければならず、更新されたデータを返す必要があります。 -**利用可能なオプション** - -**`optimisticData`**: クライアントキャッシュを直ちに更新するデータで、通常は 楽観的な UI で使用されます。 - -**`revalidate`**: 非同期更新が解決した後、キャッシュを再検証するかどうか。 - -**`populateCache`**: リモートミューテーションの結果をキャッシュに書き込むかどうか。関数も受け取ります。関数はミューテーションの結果と現在の値を引数として受けとり、ミューテーションの結果を返します。 - -**`rollbackOnError`**: リモートミューテーションでエラーが発生した場合、キャッシュをロールバックするかどうか。 - ## 現在のデータにもとづいたミューテート 現在のデータにもとづいて、データの一部を更新したい場合があります。 diff --git a/pages/docs/mutation.ko.md b/pages/docs/mutation.ko.md index 5d2e99d7..36407a64 100644 --- a/pages/docs/mutation.ko.md +++ b/pages/docs/mutation.ko.md @@ -1,5 +1,16 @@ # 뮤테이션 +```js +mutate(key, data, options) +``` + +## Options + +- `optimisticData`: 클라이언트 캐시를 즉시 업데이트하기 위한 데이터. 일반적으로 낙관적인 UI에서 사용됩니다. +- `revalidate`: 비동기 업데이트가 해소되면 캐시를 갱신합니다. +- `populateCache`: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. +- `rollbackOnError`: 원격 뮤테이션 에러 시 캐시를 롤백합니다. + ## 갱신하기 `useSWRConfig()` hook으로부터 `mutate` 함수를 얻을 수 있으며, `mutate(key)`를 호출하여 @@ -68,16 +79,6 @@ function Profile () { > **`updateFn`**은 원격 뮤테이션을 다루기 위한 promise 또는 비동기 함수여야 합니다. 업데이트한 데이터를 반환해야 합니다. -**사용 가능한 옵션** - -**`optimisticData`**: 클라이언트 캐시를 즉시 업데이트하기 위한 데이터. 일반적으로 낙관적인 UI에서 사용됩니다. - -**`revalidate`**: 비동기 업데이트가 해소되면 캐시를 갱신합니다. - -**`populateCache`**: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. - -**`rollbackOnError`**: 원격 뮤테이션 에러 시 캐시를 롤백합니다. - ## 현재 데이터를 기반으로 뮤테이트 현재 데이터를 기반으로 데이터의 일부를 업데이트하려는 경우가 있습니다. diff --git a/pages/docs/mutation.pt-BR.md b/pages/docs/mutation.pt-BR.md index 36df04c2..bf2193bd 100644 --- a/pages/docs/mutation.pt-BR.md +++ b/pages/docs/mutation.pt-BR.md @@ -1,5 +1,16 @@ # Mutação +```js +mutate(key, data, options) +``` + +## Opções + +- `optimisticData`: dados para serem atualizados imediatamente no cache do cliente, comumente usado para UI otimista. +- `revalidate`: se o cache deve revalidar quando a atualização assíncrona resolve. +- `populateCache`: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. +- `rollbackOnError`: se o cache deve reverter se a mutação remota falhar. + ## Revalidar Você pode obter a função `mutate` do hook `useSWRConfig()`, e transmitir uma mensagem de revalidação global @@ -67,16 +78,6 @@ function Profile () { > **`updateFn`** deve ser uma promise ou uma função assíncrona para lidar com a mutação remota, e deve retornar os dados atualizados. -**Opções Disponíveis** - -**`optimisticData`**: dados para serem atualizados imediatamente no cache do cliente, comumente usado para UI otimista. - -**`revalidate`**: se o cache deve revalidar quando a atualização assíncrona resolve. - -**`populateCache`**: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. - -**`rollbackOnError`**: se o cache deve reverter se a mutação remota falhar. - ## Mutação Baseada nos Dados Atuais As vezes, você quer atualizar uma parte de seus dados baseado nos dados atuais. diff --git a/pages/docs/mutation.ru.md b/pages/docs/mutation.ru.md index b673fe13..06a747a1 100644 --- a/pages/docs/mutation.ru.md +++ b/pages/docs/mutation.ru.md @@ -1,5 +1,16 @@ # Мутация +```js +mutate(key, data, options) +``` + +## Опции + +- `optimisticData`: данные для немедленного обновления кеша клиента, обычно используемые в оптимистичном UI. +- `revalidate`: должен ли кеш повторно проверяться после разрешения асинхронного обновления. +- `populateCache`: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. +- `rollbackOnError`: следует ли выполнять откат кеша в случае ошибок удаленной мутации. + ## Ревалидация Вы можете получить функцию `mutate` из хука `useSWRConfig()`, и передать сообщение о ревалидации глобально другим SWR хукам\*, используя тот же ключ, вызвав `mutate(key)`. @@ -64,16 +75,6 @@ function Profile () { > **`updateFn`** должена быть промисом или асинхронной функцией для обработки удаленной мутации, она должна возвращать обновленные данные. -**Доступные опции** - -**`optimisticData`**: данные для немедленного обновления кеша клиента, обычно используемые в оптимистичном UI. - -**`revalidate`**: должен ли кеш повторно проверяться после разрешения асинхронного обновления. - -**`populateCache`**: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. - -**`rollbackOnError`**: следует ли выполнять откат кеша в случае ошибок удаленной мутации. - ## Мутировать на основе текущих данных Иногда вы хотите обновить часть ваших данных на основе текущих данных. diff --git a/pages/docs/mutation.zh-CN.md b/pages/docs/mutation.zh-CN.md index 55fbe758..d0d256d3 100644 --- a/pages/docs/mutation.zh-CN.md +++ b/pages/docs/mutation.zh-CN.md @@ -1,5 +1,12 @@ # 数据更改 +## Options + +- `optimisticData`:立即更新客户端缓存的数据,通常用于 optimistic UI。 +- `revalidate`:一旦完成异步更新,缓存是否重新请求。 +- `populateCache`: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. +- `rollbackOnError`:如果远程更新出错,是否进行缓存回滚。 + ## 重新验证 你可以使用 `useSWRConfig()` 所返回的 `mutate` 函数,来广播重新验证的消息给其他的 SWR hook*。使用同一个 key 调用 `mutate(key)` 即可。 @@ -63,16 +70,6 @@ function Profile () { ``` > **`updateFn`** 应该是一个 promise 或异步函数来处理远程更新,它应该返回更新后的数据。 -**Available Options** - -**`optimisticData`**:立即更新客户端缓存的数据,通常用于 optimistic UI。 - -**`revalidate`**:一旦完成异步更新,缓存是否重新请求。 - -**`populateCache`**: should the result of the remote mutation be written to the cache, or a function that receives new result and current result as arguments and returns the mutation result. - -**`rollbackOnError`**:如果远程更新出错,是否进行缓存回滚。 - ## 根据当前数据更改 有时,你想基于当前数据更新部分你的数据。 diff --git a/pages/docs/options.en-US.mdx b/pages/docs/options.en-US.mdx index f4fab0a3..4112cc59 100644 --- a/pages/docs/options.en-US.mdx +++ b/pages/docs/options.en-US.mdx @@ -17,7 +17,7 @@ const { data, error, isValidating, mutate } = useSWR(key, fetcher, options) - `data`: data for the given key resolved by `fetcher` (or undefined if not loaded) - `error`: error thrown by `fetcher` (or undefined) - `isValidating`: if there's a request or revalidation loading -- `mutate(data?, shouldRevalidate?)`: function to mutate the cached data [(details)](/docs/mutation) +- `mutate(data?, options?)`: function to mutate the cached data [(details)](/docs/mutation) ## Options diff --git a/pages/docs/options.es-ES.mdx b/pages/docs/options.es-ES.mdx index 9dd18453..76d43196 100644 --- a/pages/docs/options.es-ES.mdx +++ b/pages/docs/options.es-ES.mdx @@ -17,7 +17,7 @@ const { data, error, isValidating, mutate } = useSWR(key, fetcher, options) - `data`: data de la key dada resueltos por el `fetcher` (o undefined si no está cargado) - `error`: error lanzado por el `fetcher` (o undefined) - `isValidating`: si hay una solicitud o carga de revalidación -- `mutate(data?, shouldRevalidate?`: función para mutar los datos en caché [(detalles)](/docs/mutation) +- `mutate(data?, options?`: función para mutar los datos en caché [(detalles)](/docs/mutation) ## Opciones diff --git a/pages/docs/options.ja.mdx b/pages/docs/options.ja.mdx index 924bbe87..f21ce3e4 100644 --- a/pages/docs/options.ja.mdx +++ b/pages/docs/options.ja.mdx @@ -17,7 +17,7 @@ const { data, error, isValidating, mutate } = useSWR(key, fetcher, options) - `data`: `fetcher` によって解決された、指定されたキーのデータ(もしくは、ロードされていない場合は undefined) - `error`: `fetcher` によって投げられたエラー (もしくは undefined) - `isValidating`: リクエストまたは再検証の読み込みがある場合 -- `mutate(data?, shouldRevalidate?)`: キャッシュされたデータを更新する関数 [( 詳細 )](/docs/mutation) +- `mutate(data?, options?)`: キャッシュされたデータを更新する関数 [( 詳細 )](/docs/mutation) ## オプション diff --git a/pages/docs/options.ko.mdx b/pages/docs/options.ko.mdx index 8232d9f0..ebb841f9 100644 --- a/pages/docs/options.ko.mdx +++ b/pages/docs/options.ko.mdx @@ -17,7 +17,7 @@ const { data, error, isValidating, mutate } = useSWR(key, fetcher, options) - `data`: `fetcher`가 이행한 주어진 키에 대한 데이터(로드되지 않았다면 undefined) - `error`: `fetcher`가 던진 에러(또는 undefined) - `isValidating`: 요청이나 갱신 로딩의 여부 -- `mutate(data?, shouldRevalidate?)`: 캐시 된 데이터를 뮤테이트하기 위한 함수 [(상세내용)](/docs/mutation) +- `mutate(data?, options?)`: 캐시 된 데이터를 뮤테이트하기 위한 함수 [(상세내용)](/docs/mutation) ## 옵션 diff --git a/pages/docs/options.pt-BR.mdx b/pages/docs/options.pt-BR.mdx index 97cf8b71..cba2f4da 100644 --- a/pages/docs/options.pt-BR.mdx +++ b/pages/docs/options.pt-BR.mdx @@ -1,59 +1,59 @@ -import Callout from 'nextra-theme-docs/callout' - -# Opções da API - -```js -const { data, error, isValidating, mutate } = useSWR(key, fetcher, options) -``` - -## Parâmetros - -- `key`: uma chave única em string para o pedido (ou uma função / array / null) [(uso avançado)](/docs/conditional-fetching) -- `fetcher`: (_opcional_) uma Promise retornando uma função para obter seus dados [(detalhes)](/docs/data-fetching) -- `options`: (_opcional_) um objeto de opções para esse hook SWR - -## Valores Retornados - -- `data`: dados para a chave fornecida pelo `fetcher` (ou undefined se não carregado) -- `error`: erro lançado pelo `fetcher` (ou undefined) -- `isValidating`: se há um pedido ou revalidação carregando -- `mutate(data?, shouldRevalidate?)`: função para mutar os dados em cache [(detalhes)](/docs/mutation) - -## Opções - -- `suspense = false`: habilita o modo Suspense do React [(detalhes)](/docs/suspense) -- `fetcher(args)`: a função fetcher -- `revalidateIfStale = true`: revalida automaticamente mesmo que tenha dados obsoletos [(detalhes)](/docs/revalidation#disable-automatic-revalidations) -- `revalidateOnMount`: habilita ou desabilita a revalidação automática quando o componente é montado -- `revalidateOnFocus = true`: revalida automaticamente quando a janela é focada [(detalhes)](/docs/revalidation) -- `revalidateOnReconnect = true`: revalida automaticamente quando a conexão é restaurada (via `navigator.onLine`) [(detalhes)](/docs/revalidation) -- `refreshInterval` [(detalhes)](/docs/revalidation): - - Desativado por padrão: `refreshInterval = 0` - - Se definido como um número, o intervalo de sondagem (polling) em milisegundos - - Se definido como uma função, a função recebe o último dado e deve retornar o intervalo em milisegundos -- `refreshWhenHidden = false`: sondagem (polling) quando a janela está invisivel (se `refreshInterval` está ativado) -- `refreshWhenOffline = false`: sondagem (polling) quando o navegador está offline (determinado por `navigator.onLine`) -- `shouldRetryOnError = true`: se deve tentar novamente quando o fetcher retorna um erro -- `dedupingInterval = 2000`: deduplicar pedidos com a mesma chave em este intervalo em milisegundos -- `focusThrottleInterval = 5000`: somente revalidar uma vez durante um intervalo em milisegundos -- `loadingTimeout = 3000`: tempo limite para o evento onLoadingSlow -- `errorRetryInterval = 5000`: intervalo de tentativa de erro em milisegundos -- `errorRetryCount`: número máximo de tentativas de erro -- `fallback`: um objeto de chave-valor de vários dados de fallback [(exemplo)](/docs/with-nextjs) -- `fallbackData`: dados iniciais para ser retornado (nota: isto é por-hook) -- `onLoadingSlow(key, config)`: função callback quando um pedido demora muito tempo a carregar (veja `loadingTimeout`) -- `onSuccess(data, key, config)`: função callback quando um pedido é bem-sucedido -- `onError(err, key, config)`: função callback quando um pedido retorna um erro -- `onErrorRetry(err, key, config, revalidate, revalidateOps)`: função callback quando um pedido retorna um erro -- `compare(a, b)`: função de comparação para detectar quando o dado retornado está diferente, para evitar rerenderizações desnecessárias. Por padrão, [stable-hash](https://github.com/shuding/stable-hash) é usado. -- `isPaused()`: função para detectar quando o revalidador está pausado, e deve ignorar os dados e erros quando retorna `true`. Por padrão, retorna `false`. -- `use`: array de middleware functions [(details)](/docs/middleware) - - - - Quando estiver usando uma conexão lenta (2G, {'<='} 70Kbps), errorRetryInterval será de 10s, e{' '} - loadingTimeout será de 5s por padrão. - - - -Você também pode usar a [configuração global](/docs/global-configuration) para fornecer opções padrão. +import Callout from 'nextra-theme-docs/callout' + +# Opções da API + +```js +const { data, error, isValidating, mutate } = useSWR(key, fetcher, options) +``` + +## Parâmetros + +- `key`: uma chave única em string para o pedido (ou uma função / array / null) [(uso avançado)](/docs/conditional-fetching) +- `fetcher`: (_opcional_) uma Promise retornando uma função para obter seus dados [(detalhes)](/docs/data-fetching) +- `options`: (_opcional_) um objeto de opções para esse hook SWR + +## Valores Retornados + +- `data`: dados para a chave fornecida pelo `fetcher` (ou undefined se não carregado) +- `error`: erro lançado pelo `fetcher` (ou undefined) +- `isValidating`: se há um pedido ou revalidação carregando +- `mutate(data?, options?)`: função para mutar os dados em cache [(detalhes)](/docs/mutation) + +## Opções + +- `suspense = false`: habilita o modo Suspense do React [(detalhes)](/docs/suspense) +- `fetcher(args)`: a função fetcher +- `revalidateIfStale = true`: revalida automaticamente mesmo que tenha dados obsoletos [(detalhes)](/docs/revalidation#disable-automatic-revalidations) +- `revalidateOnMount`: habilita ou desabilita a revalidação automática quando o componente é montado +- `revalidateOnFocus = true`: revalida automaticamente quando a janela é focada [(detalhes)](/docs/revalidation) +- `revalidateOnReconnect = true`: revalida automaticamente quando a conexão é restaurada (via `navigator.onLine`) [(detalhes)](/docs/revalidation) +- `refreshInterval` [(detalhes)](/docs/revalidation): + - Desativado por padrão: `refreshInterval = 0` + - Se definido como um número, o intervalo de sondagem (polling) em milisegundos + - Se definido como uma função, a função recebe o último dado e deve retornar o intervalo em milisegundos +- `refreshWhenHidden = false`: sondagem (polling) quando a janela está invisivel (se `refreshInterval` está ativado) +- `refreshWhenOffline = false`: sondagem (polling) quando o navegador está offline (determinado por `navigator.onLine`) +- `shouldRetryOnError = true`: se deve tentar novamente quando o fetcher retorna um erro +- `dedupingInterval = 2000`: deduplicar pedidos com a mesma chave em este intervalo em milisegundos +- `focusThrottleInterval = 5000`: somente revalidar uma vez durante um intervalo em milisegundos +- `loadingTimeout = 3000`: tempo limite para o evento onLoadingSlow +- `errorRetryInterval = 5000`: intervalo de tentativa de erro em milisegundos +- `errorRetryCount`: número máximo de tentativas de erro +- `fallback`: um objeto de chave-valor de vários dados de fallback [(exemplo)](/docs/with-nextjs) +- `fallbackData`: dados iniciais para ser retornado (nota: isto é por-hook) +- `onLoadingSlow(key, config)`: função callback quando um pedido demora muito tempo a carregar (veja `loadingTimeout`) +- `onSuccess(data, key, config)`: função callback quando um pedido é bem-sucedido +- `onError(err, key, config)`: função callback quando um pedido retorna um erro +- `onErrorRetry(err, key, config, revalidate, revalidateOps)`: função callback quando um pedido retorna um erro +- `compare(a, b)`: função de comparação para detectar quando o dado retornado está diferente, para evitar rerenderizações desnecessárias. Por padrão, [stable-hash](https://github.com/shuding/stable-hash) é usado. +- `isPaused()`: função para detectar quando o revalidador está pausado, e deve ignorar os dados e erros quando retorna `true`. Por padrão, retorna `false`. +- `use`: array de middleware functions [(details)](/docs/middleware) + + + + Quando estiver usando uma conexão lenta (2G, {'<='} 70Kbps), errorRetryInterval será de 10s, e{' '} + loadingTimeout será de 5s por padrão. + + + +Você também pode usar a [configuração global](/docs/global-configuration) para fornecer opções padrão. diff --git a/pages/docs/options.ru.mdx b/pages/docs/options.ru.mdx index 71bc3720..4ebe7155 100644 --- a/pages/docs/options.ru.mdx +++ b/pages/docs/options.ru.mdx @@ -17,7 +17,7 @@ const { data, error, isValidating, mutate } = useSWR(key, fetcher, options) - `data`: данные для данного ключа, разрешенные `fetcher` (или undefined, если не загружено) - `error`: ошибка, выброшенная `fetcher`-ом (или undefined) - `isValidating`: если запрос или ревалидация загружается -- `mutate(data?, shouldRevalidate?)`: функция для мутации закешированных данных [(подробнее)](/docs/mutation) +- `mutate(data?, options?)`: функция для мутации закешированных данных [(подробнее)](/docs/mutation) ## Опции diff --git a/pages/docs/options.zh-CN.mdx b/pages/docs/options.zh-CN.mdx index 6281f4fa..3e2b88aa 100644 --- a/pages/docs/options.zh-CN.mdx +++ b/pages/docs/options.zh-CN.mdx @@ -17,7 +17,7 @@ const { data, error, isValidating, mutate } = useSWR(key, fetcher, options) - `data`: 通过 `fetcher` 用给定的 key 获取的数据(如未完全加载,返回 undefined) - `error`: `fetcher` 抛出的错误(或者是 undefined) - `isValidating`: 是否有请求或重新验证加载 -- `mutate(data?, shouldRevalidate?)`: 更改缓存数据的函数 [(详情)](/docs/mutation) +- `mutate(data?, options?)`: 更改缓存数据的函数 [(详情)](/docs/mutation) ## 选项