{#await data.myPromise}{:then results}{#each results as result}
  • {result}
  • {/each}{:catch error}

    {error?.message ?? \\\"Something went wrong\\\"}

    {/await}

    Así es básicamente como funciona el bloque #await en esbelto. Muestra contenido diferente según el estado de una promesa: un indicador de carga mientras está pendiente, resultados cuando se resuelve y un mensaje de error si se rechaza.

    Pero digamos que quiero que se ejecute una determinada función cuando la promesa se haya resuelto o rechazado (como un brindis).


    Ejecutar (activar) una función cuando el bloque #await se resuelve o rechaza

    Así es como puedes ejecutar funciones específicas cuando la promesa se resuelve o rechaza:

    {#await data.myPromise}{:then results}{showSuccess(results.length)}  {#each results as result}
  • {result}
  • {/each}{:catch error}{showError(error.message)}

    {error?.message ?? \\\"Something went wrong\\\"}

    {/await}

    Ahora, nuestra función se ejecutará cada vez que se alcance el bloque de código.


    Pero una cosa más...

    Corrija el texto indefinido o devuelto que aparece en el navegador

    Cuando se ejecutan estas funciones, el texto devuelto aparecerá en el navegador, porque es una especie de solución alternativa. La sintaxis que utilizamos generalmente está destinada a mostrar cadenas/números devueltos en el navegador. Incluso si no se devuelve nada, se devolverá el valor predeterminado indefinido. Y esta cadena (que normalmente no tiene sentido) se mostrará al usuario final. Algo como esto:
    \\\"Running

    ¿No tiene sentido para el usuario final?‍♂️?‍♀️

    Por lo tanto, asegúrese de devolver cadenas vacías o envuelva la función en un bloque oculto:

    1. Método 1 (Devolver cadenas vacías):

    En este método, nos aseguraremos de devolver cadenas vacías de nuestras funciones.

    {#await data.myPromise}  {:then results}{showSuccess(results.length)} {#each results as result}
  • {result}
  • {/each}{:catch error}{showError(error.message)}

    {error?.message ?? \\\"Something went wrong\\\"}

    {/await}

    Esto asegurará que se devuelvan cadenas vacías.

    --- O ---

    2. Método 2 (Ocultar el texto devuelto de la función en la interfaz de usuario con CSS).

    En este método, ocultaremos el bloque de funciones en la interfaz de usuario, de modo que el texto devuelto quede oculto a la vista del usuario.

    {#await data.myPromise}  {:then results}
    {showSuccess(results.length)}
    {#each results as result}
  • {result}
  • {/each}{:catch error}
    {showError(error.message)}

    {error?.message ?? \\\"Something went wrong\\\"}

    {/await}

    Este método basado en CSS garantizará que el texto devuelto esté oculto a la vista.

    felizhacking

    PD: ¿Necesitas contratar un desarrollador de SvelteKit? Contáctame

    ","image":"http://www.luping.net/uploads/20241118/1731929413673b254564c1a.png","datePublished":"2024-11-18T20:21:13+08:00","dateModified":"2024-11-18T20:21:13+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
    "Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"

    Ejecutar una función cuando un bloque #await se resuelve en Svelte(Kit)

    Publicado el 2024-11-18
    Navegar:820

    Saltar al contenido:

    • Acerca del bloque #await en svelte
    • Ejecutar (activar) una función cuando el bloque #await se resuelva o rechace
    • Corrija el texto indefinido o devuelto que aparece en el navegador
      • 1. Método 1 (Devolver cadenas vacías):
      • 2. Método 2 (Ocultar el texto devuelto de la función en la interfaz de usuario con CSS).
        • PD: ¿Necesitas contratar un desarrollador de SvelteKit? Contáctame

    Acerca del bloque #await en esbelto

    El bloque #await en svelte es muy útil para manejar datos asincrónicos:

    
    
    {#await data.myPromise}
    
    
    
    {:then results}
    
    {#each results as result}
    
  • {result}
  • {/each} {:catch error}

    {error?.message ?? "Something went wrong"}

    {/await}

    Así es básicamente como funciona el bloque #await en esbelto. Muestra contenido diferente según el estado de una promesa: un indicador de carga mientras está pendiente, resultados cuando se resuelve y un mensaje de error si se rechaza.

    Pero digamos que quiero que se ejecute una determinada función cuando la promesa se haya resuelto o rechazado (como un brindis).


    Ejecutar (activar) una función cuando el bloque #await se resuelve o rechaza

    Así es como puedes ejecutar funciones específicas cuando la promesa se resuelve o rechaza:

    
    
    {#await data.myPromise}
    
    
    
    {:then results}
    
    {showSuccess(results.length)}
    
      
    {#each results as result}
    
  • {result}
  • {/each} {:catch error} {showError(error.message)}

    {error?.message ?? "Something went wrong"}

    {/await}

    Ahora, nuestra función se ejecutará cada vez que se alcance el bloque de código.

    • showSuccess se llama cuando la promesa se resuelve, con el número de resultados como argumento.
    • showError se activa si la promesa se rechaza y muestra un mensaje de error personalizado.

    Pero una cosa más...

    Corrija el texto indefinido o devuelto que aparece en el navegador

    Cuando se ejecutan estas funciones, el texto devuelto aparecerá en el navegador, porque es una especie de solución alternativa. La sintaxis que utilizamos generalmente está destinada a mostrar cadenas/números devueltos en el navegador. Incluso si no se devuelve nada, se devolverá el valor predeterminado indefinido. Y esta cadena (que normalmente no tiene sentido) se mostrará al usuario final. Algo como esto:
    Running a Function When an #await Block resolves in Svelte(Kit)

    ¿No tiene sentido para el usuario final?‍♂️?‍♀️

    Por lo tanto, asegúrese de devolver cadenas vacías o envuelva la función en un bloque oculto:

    1. Método 1 (Devolver cadenas vacías):

    En este método, nos aseguraremos de devolver cadenas vacías de nuestras funciones.

    
    
    {#await data.myPromise}
      
    
    
    {:then results}
    
    {showSuccess(results.length)} 
    
    
    {#each results as result}
    
  • {result}
  • {/each} {:catch error} {showError(error.message)}

    {error?.message ?? "Something went wrong"}

    {/await}

    Esto asegurará que se devuelvan cadenas vacías.

    --- O ---

    2. Método 2 (Ocultar el texto devuelto de la función en la interfaz de usuario con CSS).

    En este método, ocultaremos el bloque de funciones en la interfaz de usuario, de modo que el texto devuelto quede oculto a la vista del usuario.

    
    
    {#await data.myPromise}
      
    
    
    {:then results}
    
    
    
    {#each results as result}
    
  • {result}
  • {/each} {:catch error}
    Declaración de liberación Este artículo se reproduce en: https://dev.to/digitaldrreamer/running-a-function-when-an-await-block-resolves-in-sveltekit-11ec?1 Si hay alguna infracción, comuníquese con Study_golang@163 .com para eliminarlo
    Último tutorial Más>

    Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

    Copyright© 2022 湘ICP备2022001581号-3