Colas de Laravel: Inyección de dependencia

colas de laravel

Inyección de dependencia de colas de Laravel


Lo primero que debemos saber sobre las colas de Laravel es que la inyección de dependencia no puede ocurrir en el constructor y ocurre en el nivel del método de manejo.

Cuando el trabajo está siendo procesado por la cola, se invoca el método handle y podemos escribir dependencias de sugerencia en el método del trabajo y el contenedor de servicios de Laravel inyecta automáticamente estas dependencias.

Nota: Si desea controlar esto completamente, puede ir a App \ Providers \ AppServiceProvider, en el método de arranque, y usar el método bindMethod. BindMethod acepta una devolución de llamada que recibe el trabajo y el contenedor.

Dentro de esta devolución de llamada, puede invocar el método handle como desee.


La molestia de la inyección del mango

Cuando inyectamos las clases a través del método handle, no las definimos como propiedades de clase, por lo tanto, cuando las necesitemos en otras funciones dentro del Trabajo (considerando que se volverá sustancialmente complejo y grande y su lógica se dividirá en múltiples métodos) tendremos para pasarlos como parámetros a dichas funciones.

Y tengo una manera de evitar esto y mantener su código un poco más ordenado.

Y de la misma manera, no necesitamos pasar nada como parámetros para cualquier cantidad de funciones que tenga.


Nota: He estado lidiando con trabajos con cientos de líneas últimamente y esto me ha estado molestando inicialmente, esto me ha ayudado, ¡así que espero que también te ayude a ti!

Recent Post