Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

diferença entre methods e computed

Pelo que eu entendi utilizamos o computed e o methods para declarar funções que serão utilizadas pelo componente. Qual é a diferença entre eles?

4 respostas

Olá Mayki, tudo bem?

A principal diferença entre computed e methods tem haver com o cachê, isto é, se você utiliza a função dentro de methods ela sempre necessitará ser executada para ter o retorno, enquanto dentro de computed existe um cachê que apenas irá reexecutar a função caso alguma dependência seja alterada (o valor de uma variável por exemplo), caso nada tenha sido alterado, ele não precisa executar a função novamente, pois já tem no cache o resultado :)

Entendeu? Vou deixar uma parte da documentação que pode te dar mais exemplos: Documentação Methods Vue

Abraços e Bons Estudos!

solução!

Fala ai Mayki, tudo bem? Vamos lá:

Pelo que eu entendi utilizamos o computed e o methods para declarar funções que serão utilizadas pelo componente. Qual é a diferença entre eles?

  • computed: Geralmente são funções que criamos para gerar diferentes saídas referente aos dados do componente, isso evitar a necessidade de escrever essas regras diretamente no template, por exemplo: Tornar uma String em caixa alta, inverter uma String, calcular o valor de um produto, etc...

Ao usar o computed nosso template vai chamá-lo como se fosse uma propriedade e não função: {{ algumComputed }}.

  • method: Os métodos são funções que nosso template pode chamar, ou seja, uma função quando clicar em um botão, submeter um formulário e coisas do tipo.

A diferença maior está no cache, propriedades computadas (computed) apenas são recomputadas caso sua dependência mude de valor, ou seja, se estamos invertando o valor de uma String, essa inversão apenas vai ser processada novamente caso a String sofra alguma alteração.

Já no caso dos métodos (methods), o processamento sempre será feito e refeito.

Sendo assim, para propriedades é recomendável o uso do computed.

Espero ter ajudado.

Muto obrigado. Ambas as resposta ajudaram muito

Magina, sempre que precisar não deixe de criar suas dúvidas,

Abraços e bons estudos.