paquete de la biblioteca de montaje emisión vue $ $ emisión de despacho

$ $ Despacho y código fuente de difusión:

la función de transmisión (componentName, eventName, los params) {
   el presente . $ children.forEach (Child => { 
    nombre const = Niño. options.name $
     // nombre del componente componentName consistente con la entrada 
    SI (nombre === componentName) {
       // eventName evento de disparo subconjunto 
      niño $ emit.apply (niño, [eventName] .concat (los params)). 
    } else { 
            broadcast.apply (niño, [componentName, eventName] .concat ([params])); // eslint- line-disable 
    } 
  }) 
} 

de exportación por defecto { 
  Métodos: { 
    // gatillo hasta eventos
    el envío $ (componentName, eventName, params) {
       // obtener la instancia principal 
      let matriz = el presente . $ matriz || el presente . $ raíz
       // obtener el nombre del componente 
      del nombre de Let = padres. $ options.name
       // búsquedas recursivas en consonancia con el componentName nombre del componente 
      al mismo tiempo (padre && (! nombre nombre ||! == componentName)) { 
        padres = padres. $ matriz 

        SI (padre) { 
          nombre = padres. options.name $ 
        } 
      } 
      SI (padre) {
         // componente para eventName gatillo evento
        los padres. $ emit.apply (padre, [eventName] .concat (los params)) 
      } 
    }, 
    // caso de envío al promotor (Sol) ensamblaje 
    $ Broadcast (componentName, eventName, los params) { 
      broadcast.call ( el este , componentName, eventName , el params) 
    } 
  } 
}

 

Supongo que te gusta

Origin www.cnblogs.com/mengfangui/p/12629173.html
Recomendado
Clasificación