8 - Watchers Flashcards

(9 cards)

1
Q

O que a função watch faz?

A

O watch é usado para chamar callbacks quando uma propriedade reativa é alterada

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Em vue, qual a principal diferença entre o caso de uso de uma compudata e um watch?

A

Apesar de ambos os métodos serem disparados quando um estado reativo é modificado, temos algumas diferenças:

  • o watch é disparado automaticamente, já a computada, apenas se invocada no código ou template
  • A computada é ideal para a computação de valores, já o watch, para execução de código com side effect, como modificação no DOM, modificação de outros estados, etc
  • Uma computed retorna um valor, enquanto um watcher não
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Quais os tipos de dados podem ser usados como “fonte” em watch?

A

Ref, incluindo uma computed ref, um objeto reativo, uma função getter ou um array

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Como criar deep watchers em vue?

A

Para criar watchers que observam mudanças em toda a estrutura de um objeto reativo usamos a propriedade {deep : true}. Após a versão 3.5 do Vue essa propriedade também aceita um valor numérico indicando a profundidade máxima que o watch deve observar

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Existe algum problema em usar deep em watchers de modo indiscriminado?

A

Sim, deep é poderoso, mas custoso, já que ele aumenta o custo de observação pois o Vue precisa percorrer todas as propriedades internas. Isso pode ter um impacto na performance em grandes esturutras de dados. É recomendado usar apenas quando necessário.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Para que serve a propriedade “immediate” em um watcher?

A

Faz com que o watcher execute sua função imediatamente na criação, logo antes do componente ser montado, e não apenas quando o valor observado mudar.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Para que serve a propriedade “once” em um watcher?

A

Ela faz com que o callback do watch execute apenas uma vez após o estado observado mudar, e não todas as vezes que ele sofre alteração

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

O que é e para que serve o WatchEffect em vue?

A

É um método semelhante ao watch e que “rastreia automaticamente” as dependências reativas usadas no corpo do callback, sem precisar declará-las. Ele também funciona de modo imediado, como o watch com a propriedade immediate

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Por que usar watchEffect é mais recomendável que deep watchers?

A

Há um ganho de performance já que em um deep watcher todas as propriedades do objeto são monitoradas, enquanto que em um watchEffect apenas aquelas que estão sendo usadas no bloco de código precisam de tracking

How well did you know this?
1
Not at all
2
3
4
5
Perfectly