ApiMutation
interfaz Since 1.2.0
Resultado de useApiMutation(ruta, método): llama a un endpoint de API que no es GET bajo
demanda con mutate({ params, query, body }), nunca en SSR, y refleja la última llamada en
pending, data y error. Con la opción retrySafe añade RetrySafeMutation.
import type { ApiMutation } from "@meekojs/meeko/framework";Source code src/app/composables/resources/engine.ts:192
Declaración #
interface ApiMutation<O extends AnyApiOperation> {
mutate(...input: ApiMutationArguments<O>): Promise<O['output']>
readonly pending: ReadonlySignal<boolean>
readonly error: ReadonlySignal<Error | null>
readonly data: ReadonlySignal<O['output'] | null>
}Type parameters #
-
Oextends AnyApiOperation Operación del contrato de API.
Example #
<script lang="ts">
const remove = useApiMutation("/api/notes/[id]", "DELETE");
async function erase(id: string): Promise<void> {
await remove.mutate({ params: { id } });
}
</script>
<template><p if:when="remove.error.value">No se pudo borrar.</p></template>Miembros #
mutate
#
mutate(...input: ApiMutationArguments<O>): Promise<O['output']>Llama al endpoint con el token CSRF; devuelve su salida o rechaza con su error. Se puede
llamar sin argumentos cuando la operación no exige params, query ni body.
data
#
readonly data: ReadonlySignal<O['output'] | null>Salida de la última llamada correcta, o null.
See also #
- Mutations Framework full-stack