Recibo este error en la terminal, en el proceso de compilación en un entorno angular8. En el host local, navego por la página sin problemas y sin errores en la consola. Hice un console.log de la variable que ha asignado esa propiedad del conjunto de datos y se lee correctamente. A continuación se muestra la parte del código interesado:
let timelineEls = document.querySelectorAll('[data-scroll-timeline]'); scroll.on("scroll", () => { for ( let i = 0; i < timelineEls.length; i++ ) { let progress = self.getProgress(timelineEls[i]); let timelineKey = timelineEls[i].dataset.scrollTimeline; console.log(timelineEls[i].dataset); let timeline = timelines[timelineKey]._recent; let timeline = timelines[timelineKey]; let duration = timeline.duration(); if ( progress > 0 && progress <= 1 ) { timeline.seek(progress * duration); } else { if ( progress <= 0 ) { timelines[timelineKey].seek(0); } else { timelines[timelineKey].seek(duration); } } } })console.log marca correctamente esto: DOMStringMap {scroll: "", scrollTimeline: "albed-anim"}
¿Tiene alguna idea de cómo deshacerse de este error? Supongo que es un error mecanografiado, pero no pude encontrar ninguna razón mientras se muestra y cómo evitarlo.
Gracias de antemano.
El conjunto de dataset de propiedades no existe en el tipo Element , pero sí en HTMLElement . Debe asegurarse de que sea de este tipo antes de continuar. También funciona para ajustar un poco el bucle for:
for (const timelineEl of timelineEls) { if (timelineEl instanceof HTMLElement) { const progress = self.getProgress(timelineEl); const timelineKey = timelineEl.dataset.scrollTimeline; // ... } }