Angular Свойство offsetWidth не существует для типа Element - PullRequest
0 голосов
/ 05 августа 2020

new to angular, я пытаюсь использовать ScrollTrigger для горизонтальной прокрутки.

Он работает, но когда я обслуживаю или строю, я получил сообщение об ошибке: свойство offsetWidth не существует в типе Element '.

Это код для gsap:

gsap.to(sections, {
  xPercent: -100 * (sections.length - 1),
  ease: "none",
  scrollTrigger: {
    trigger: ".panel-container",
    pin: true,
    scrub: 1,
    snap: 1 / (sections.length - 1),
    end: () => "+=" + document.querySelector(".panel-container").offsetWidth
  }
});

Даже если я получаю сообщение об ошибке, он работает, когда я консоль записываю "document.query ..", я получил хорошее ширина элемента.

Но ошибка мешает мне создать ng build. Я уже выполнил приведение, сначала с:

let myElem = document.querySelector(".panel-container").offsetWidth as HTMLElement;

Или с before, но это не работает, у меня есть строка с красным подчеркиванием с сообщением об ошибке: Преобразование типа 'string' в тип 'HTMLElement 'может быть ошибкой, потому что оба типа в достаточной степени перекрываются друг с другом.

Мой angular проект - 10.0.5.

Попробовал решение в ответ:

(document.querySelector(".panel-container") as HTMLElement).offsetWidth;

Но эта ошибка отображается красным подчеркиванием, но ничего не отображается в консоли при подаче. . Если это было намеренно, сначала преобразуйте выражение в «неизвестно». В типе 'Element' отсутствуют следующие свойства типа 'HTMLElement': accessKey, accessKeyLabel, autocapitalize, dir и еще 105.ts (2352)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...