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

Na função selecionaTarefa() Expected 1 arguments, but got 5

Tenho a seguinte função:

function selecionaTarefa(tarefaSelecionada: ITarefa) {
    setTarefaSelecionada(tarefaSelecionada);
    setTarefas(tarefasAnteriores => tarefasAnteriores.map(tarefa => ({
      ...tarefa,
      selecionado: tarefa.id === tarefaSelecionada.id ? true : false
    })));
  }

Ao chamar a função no componente:

export default function Item({tarefa, tempo, selecionado, completado, id, selecionaTarefa} : Props) {
    console.log({tarefa, tempo, selecionado, completado, id});
    return (        
        <li 
            className={`${style.item} ${selecionado ? style.itemSelecionado : ''}`}
            onClick={() => selecionaTarefa(
                tarefa,
                tempo,
                selecionado,
                completado,
                id
            )}
        >
            <h3>{tarefa}</h3>
            <span>{tempo}</span>
        </li>
    )
}

Obtenho um erro que a função espera apenas um parametro porem esta recebendo 5, no caso os 5 parametros são corespondentes a interface que a função espera receber como parametro:

Expected 1 arguments, but got 5.ts(2554)
react version 18.2.0
1 resposta
solução!

O parametro esperado na função selecionaTarefa é um objeto do tipo ITarefa, logo faltou passar os valores como objeto...

selecionaTarefa(
                {
                    tarefa,
                    tempo,
                    selecionado,
                    completado,
                    id
                } 

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software