ember-leaflet es un complemento muy popular del ecosistema EmberJS que permite mucha flexibilidad.
Pero ¿qué pasa si quiero ampliar su funcionalidad para que pueda hacer aún más? ¿Y qué pasa si lo quiero como un nuevo componente generado directamente desde las capas de
Al principio necesitaremos nuestro nuevo componente. Para simplificar, este componente simplemente extenderá un componente de capa existente del complemento. Usemos el componente marcador y hagamos que simplemente ignore el argumento de ubicación y establezca un valor falso codificado:
// app/components/fake-marker-layer.gts import MarkerLayer from 'ember-leaflet/components/marker-layer'; export default class FakeMarkerLayer extends MarkerLayer { get location() { return this.L.latLng(46.68, 7.85); } }
Después de esto necesitaremos registrar el componente con el servicio ember-leaflet:
// app/instance-initializers/leaflet.ts import FakeMarkerLayer from '../components/fake-marker-layer'; import type Owner from '@ember/owner'; export function initialize(owner: Owner) { const emberLeafletService = owner.lookup('service:ember-leaflet'); if (emberLeafletService) { emberLeafletService.registerComponent('fake-marker-layer', { as: 'fake-marker', component: FakeMarkerLayer, }); } } export default { initialize, };
Y ahora podemos usarlo:
import LeafletMap from 'ember-leaflet/components/leaflet-map';
También puedes leer sobre esta técnica en la página de documentación oficial del folleto de brasas.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3