Estoy usando un valor de referencia para poder ejecutar solo un evento de clic si el valor de referencia está cambiando.
Por ejemplo, si quiero actualizar/eliminar la matriz interna let myRef = ref([]); , ¿simplemente profundizo dentro del proxy y realizo las operaciones de esa manera?
selectedElements.value.push(3); que devuelve Proxy {0: 3}
o ¿cuál es la forma correcta de actualizar/eliminar el valor de ref.value ?
export default { setup() { let myRef = ref([]); return { myRef }; }, };Lo tienes bajo control. Así es como manejo el estado.
En la configuración, enumero todas mis referencias u objetos reactivos. Usaré propiedades calculadas si me apetece hacer varias comprobaciones cruzadas en mis referencias o estado, por ejemplo, tengo registros, cuántos, etc.
Escribiré funciones pequeñas que manejarán cambios/mutaciones de estado en un componente local. Si necesito usar un observador en estado (referencia u objeto reactivo), lo haré y lo usaré para llamar a un método/acción. Solo puede actualizar los valores internos de referencia accediendo a la propiedad única del objeto de referencia .value que apunta a su valor interno. Estoy seguro de que lo sabes, pero la referencia es un envoltorio. En su método de configuración, deberá desenvolver una referencia para cambiar su valor interno, pero esto no es cierto con un objeto reactivo, en el que puede establecer ese valor según un valor de datos normal de Vue2.
Entonces, sí, en su ejemplo, puede mutar su matriz myRef como lo necesite accediendo a su propiedad de valor. Nuevamente, una buena manera de hacer esto sería definir un método que haga lo que necesita hacer, agregando a la matriz. Y use una propiedad calculada para verificar si su condicional está permitiendo o denegando su evento de clic.