sio2sio2 / lobaton

Iconos mutables con Leaflet y mapa de adjudicaciones y oferta educativa de cenros educativos andaluces
MIT License
5 stars 5 forks source link

Transformación automática de datos en Correctable #22

Closed sio2sio2 closed 5 years ago

sio2sio2 commented 5 years ago

Ahora mismo, es necesario usar explícitamente el método prepare() o aplicar una corrección con apply para que los arrays corregibles de los datos pasen a ser Correctables. En consecuencia, cualquier tarea que pretenda mostrar datos o la función de un objeto Converter (que también necesita leerlos) se ve obligada a comprobar antes de leer si el dato es un array normal o un Correctable.

Sería deseable que los arrays fueran Correctable desde el momento en que los datos se asocian a una marca.. Como la propiedad en la que se enchufan los datos es conocida desde el principio (ya que es el valor de la opción mutable), se podría hacer que tal propiedad fuera un descriptor de acceso y que su método set() consulte cuáles son las correcciones definidas y aplique directamente las correcciones a Correctable (p.e. usando el actual método `.prepare()qe podría pasar a ser._prepare()`` ya que no formará parte de la API pública.

Por ejemplo:

const Centro = L.Marker.extend({options: {mutable: "feature.properties.data"}});

En este caso, la propiedad feature de marca se podría transformar en un selector de acceso.

sio2sio2 commented 5 years ago

Hecho,