Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

O método não é sugerido no VSCode

olá, boa noite!

document.addEventListener('FocoFinalizado', () => {
    if (tarefaSelecionada && liTarefaSelecionada) {
        liTarefaSelecionada.classList.remove('app__section-task-list-item-active');
        liTarefaSelecionada.classList.add('app__section-task-list-item-complete');
        liTarefaSelecionada.querySelector('button').setAttribute('disabled', 'disabled'); 
    }
})

Na linha de código liTarefaSelecionada.querySelector('button') o VSCode não sugeria um método de setAttribute() pois parecia que não estava reconhecendo que se tratava de um elemento HTML.

Eu verifiquei no console o retorno dessa linha (código nao exibido) e realmente retornava o elemento html. Alguem sabe me dizer o porque?

OBS: o código funcionou normalmente.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Olá, bruno!

O problema que você tá enfrentando parece estar relacionado ao intellisense do VSCode, que pode não estar reconhecendo automaticamente o tipo da variável liTarefaSelecionada como um elemento HTML válido, mesmo que ele seja de fato um elemento DOM.

Isso pode ocorrer porque o querySelector() retorna um tipo mais genérico, como Element | null, e o VSCode (ou o TypeScript, se você estiver usando) pode não estar inferindo que, no seu caso, é um HTMLElement. P Abs;