Así que creo que eso es una mejora y podríamos llegar tan lejos como, ya sabes, pegar esto directamente en línea, porque va a devolver su función off. Pero siento que eso es un poco demasiado. Siento que eso es solo un paso más allá de lo que necesitamos hacer. Muy bien. Y para nuestro gran movimiento final de refactorización, de nuevo, esto es solo una forma más agradable de escribir lo que habíamos escrito antes, cambiémoslo estructuralmente ahora mismo, este código es muy imperativo. Um, lo que significa que es solo paso a paso, es como recorrer el árbol DOM para cada iteración, verificar un atributo, obtener ese atributo, registrar un oyente. Sabes, en términos de mantenibilidad, eso no siempre es lo más mantenible. Así que si piensas en cuál es el código que quiero mantener, si este es mi pequeño framework, cuál es el código que si necesitara agregar un nuevo atributo, como flame text, tendría que copiar todo esto, tal vez esto se haría enorme. Y todo está dentro de este walker. Es como, ¿y si solo fuera a la tierra de la fantasía y escribiera lo que quiero? Bueno, en lugar de llamarlo attributes, llamémoslo directive. Así que, ¿y si dijera directive? Y luego podría simplemente decir algo como flame click, y luego simplemente tomar este callback completo aquí mismo. Bien. Y, y estos incluso, como estos son todos parámetros individuales que se están pasando. Preferiría convertir esto en un objeto de cosas que se están pasando para que pudiera simplemente elegir y seleccionar qué cosas quiero, como, oh, solo quiero el elemento. O solo quiero el on remove, o solo quiero la expresión. Así que sí, esto está diseñado por pensamiento deseoso. Para mí, esto es como. Una forma mucho mejor de hacerlo. Así que registra la directiva, como declara las directivas. Este es un enfoque más declarativo para declarar las directivas al frente, y ahora dentro de este walker tener algún método como boot o algo así como boot element. Y luego esta función directive registra una directiva en un montón de directivas, y luego boot recorre todas esas directivas y realmente las inicia. Así que escribamos eso, vamos a salir de nuestros utils ahora mismo. Y vamos a crear un nuevo archivo llamado directives dot JS. Esto es otra cosa que me gusta hacer. Se llama, lo llamo el principio de archivo único es cuando estás escribiendo funciones que pertenecen juntas, las pones en un solo archivo. Así que como cualquier cosa que tenga que ver con directivas va en un solo archivo. De esa manera siempre sabes dónde encontrarlo. Um, si estás acostumbrado a la programación orientada a objetos, como PHP o Python o Python o Java o algo así, estás acostumbrado a escribir clases como esta. Bueno, realmente no uso clases en JavaScript. Más bien uso estos módulos, estos archivos, donde en lugar de métodos, tengo funciones.
Comments