4
respostas

Js carrega porém não funciona

Quero importar um arquivo .js, chega até ficar disponível, porém o que devia acontecer não acontece, hehe. Como que faz pra incluir um arquivo js de forma correta?

4 respostas

Oi Victor!

Para que um arquivo .js seja entendido pelo Angular, é necessário declará-lo no angular.json. Dentro deste arquivo, procure a propriedade scripts e adicione o caminho do arquivo .js como item do array

"scripts": [
  "caminho/ate/o/arquivo.js"
]

Pois então, eu já fiz isso. Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Oi Victor!

Você poderia compartilhar mais detalhes sobre o que esse script faz? Se puder mandar o código dele e também o código do componente em que ele está sendo usado seria ótimo!

Aguardo seu retorno.



const debounce = function (func, wait, immediate) {
  let timeout;
  return function (...args) {
    const context = this;
    const later = function () {
      timeout = null;
      if (!immediate) func.apply(context, args);
    };
    const callNow = immediate && !timeout;
    clearTimeout(timeout);
    timeout = setTimeout(later, wait);
    if (callNow) func.apply(context, args);
  };
};

const target = document.querySelectorAll('[data-anime]');
const animationClass = 'animate';

function animeScroll() {
  const windowTop = window.pageYOffset + (window.innerHeight * 0.75);
  target.forEach(function (element) {
    if ((windowTop) > element.offsetTop) {
      element.classList.add(animationClass);
    } else {
      element.classList.remove(animationClass);
    }
  })
}

animeScroll();

if (target.length) {
  window.addEventListener('scroll', debounce(function () {
    animeScroll();
  }, 10));
}