5

Ho visto questi eventi sparsi nel codice di esempio di chaplin, ma non ci sono spiegazioni all'interno della documentazione o della fonte. Sembra che significhi che si tratta di un evento globale, che innesca un'azione. È corretto? Sono solo una convenzione, o sono forzati in qualche modo?All'interno del framework Chaplin js, con che cosa hanno prefissato gli eventi! significare?

# Handle login 
@subscribeEvent 'logout', @logout 
@subscribeEvent 'userData', @userData 

# Handler events which trigger an action 

# Show the login dialog 
@subscribeEvent '!showLogin', @showLoginView 
# Try to login with a service provider 
@subscribeEvent '!login', @triggerLogin 
# Initiate logout 
@subscribeEvent '!logout', @triggerLogout 

risposta

4

Citato da un GitHub issue regarding the same question:

!logout è più di un messaggio tra i moduli o di comando. Consente a un modulo di attivare il logout (ad esempio una vista con un pulsante di uscita ). Il processo di logout effettivo viene quindi gestito da un altro modulo (ad esempio il controller di sessione). Questo modulo invalida la sessione sul server, ad esempio. In caso di successo, emette un evento che significa che lo logout è successo. Tutti i moduli interessati all'accesso/disconnessione devono essere abbonati allo logout.

Penso che lo spieghi abbastanza bene. Fondamentalmente l'evento ! viene attivato quando l'azione viene avviata e l'evento normale viene attivato quando l'azione ha avuto esito positivo.

+0

Questo ha senso. Grazie, ho avuto un momento difficile alla ricerca del! – sethp