DEV Community 👩‍💻👨‍💻

Filipe Roberto Beck
Filipe Roberto Beck

Posted on • Updated on

Typescript - `willSet` e `didSet` com decorators

EDITADO(1): Atualizei o exemplo para permitir o uso de @willSet() e @didSet() em sequência
EDITADO(2): Atualizei o exemplo para invocar @willSet das superclasses depois e @didSet das superclasses antes
EDITADO(3): Agora foi

Achei no Github uma lib bem interessante, chamada classy, para observar mutações em propriedades de forma similar à linguagem Swift usando decorators. Ela é mais abrangente, fornecendo os decorators @classy para a classe e @property para as propriedades, com a possibilidade de definir get e set também. Eu queria algo mais simples, sem a necessidade de decorar a classe, sem get e set e usando diretamente os decorators @willSet e @didSet. O link com o código e exemplos está aqui

Esse recurso é útil quando a propriedade não precisa ser computada mas tem efeitos colaterais. Isso evita a necessidade de criar um setter para os efeitos colaterais e uma propriedade armazenada de nome similar que será atribuída pelo setter antes de manipular os efeitos colaterais.

Top comments (0)

All DEV content is created by the community!

Hey, if you're landing here for the first time, you should know that this website is a global community of folks who blog about their experiences to help folks like you out.

Sign up now if you're curious. It's free!