Y la edad es la clave que queremos obtener. Así que en este caso, la edad. Y cuando decimos el nombre, bueno, dice nombre, perfecto. Simplemente llamémoslo 'get' para ver con qué estamos trabajando.
Y quizás hayas notado que siempre devuelve 'undefined', ¿por qué es eso? Bueno, porque no estamos devolviendo nada. Te dije que podemos sobrescribir completamente esta función, pero ahora la rompimos. Tenemos que volver a codificar la funcionalidad. Entonces lo que vamos a hacer es simplemente devolver el objetivo con el valor de la clave. Bien, veamos si eso funcionó. Como un encanto. Perfecto.
Ahora sobrescribamos el 'setter'. El 'setter' toma un argumento adicional, el valor. Permíteme ser un poco perezoso y copiar esto. Establecer la clave en el valor. ¿Qué sucede cuando establecemos el nombre en Jimmy, por ejemplo? Sí, establecemos y luego el nombre. ¿A qué valor queremos establecer el nombre? Jimmy. Entonces, ahora cuando vamos a, cuando mostramos el nombre, no cambió, ¿por qué? Porque nuevamente no lo establecimos. Simplemente sobrescribimos nuestra función original y la rompimos. De acuerdo, arreglemos eso. Establezcamos la clave en el objetivo con el nuevo valor y probemos de nuevo. El nombre es Jimmy. Y luego, cuando intentamos leer el nombre, ¡hey, se actualizó, perfecto!
Entonces ahora hemos interceptado estas funciones, pero ¿qué debemos hacer con ellas? En la reactividad de Vue, hacemos algo así, aquí en el 'get', hacemos un seguimiento, hacemos algo que se llama seguimiento, y aquí en el 'setter', algo que se llama activación. Bueno, en realidad, pasamos el objetivo y la clave aquí. Entonces, lo que hace esto es que el seguimiento es, nos damos cuenta de que hay algo que, en efecto, algo que quiere ser observado, así que lo tomamos y lo escribimos como una dependencia, y luego cuando algo cambia, cuando establecemos un nuevo valor, lo activamos. Así que le decimos al sistema, ¡hey, algo cambió aquí! Pero eso se vuelve demasiado profundo, y tengo otra charla en una conferencia o varias charlas en conferencias sobre este tema donde profundizo un poco más en la reactividad de Vue 3, pero por ahora, esto es suficiente. Además, en la versión real de la reactividad de Vue 3, no usamos esto, usamos algo llamado 'reflect' para resolver algunas advertencias, pero no voy a entrar en eso demasiado, porque ahora estamos viendo algo diferente. Entonces, Vue 3 tiene una función llamada 'reactivity', y es más o menos algo como esto.
Comments