[email protected] +55 11 3280-0301

Cloud Functions em arquivos seprados?

Hoje você aprenderá como refatorar suas Cloud Functions e separá-las em vários arquivos. Começaremos com este código:

Digamos que eu tenho um aplicativo que manipula eventos para um usuário e ele mantêm uma lista de convidados em cada evento que ele cria.

O usuário agora quer duplicar os dados dos convidados e ele quer criar uma lista privada que mostra todos os nomes dos seus convidados com o evento em que participaram. E uma lista pública que mostra apenas os nomes dos convidados.

Poderíamos mantê-los dentro do arquivo index.ts e isso resolveria, mas para este exemplo, moveremos cada função para seu arquivo (o que tornará a adição de mais funções mais fácil).

A primeira coisa que precisamos fazer é criar os arquivos, dentro da pastas functions/src/ (onde está o arquivo index.ts) vamos criar dois novos arquivos: public-list.ts e private-list.ts.

Dentro do arquivo public-list.ts importe o SDK do administrador e exporte uma função chamada addPublic() que leva o evento como um parâmetro e tem toda a lógica do addGuestToPublicList.

Agora faça o mesmo para private-list.ts, mas este irá manter a lógica da função addGuestToPrivateList:

Agora podemos importar as funções para o index.ts

 

Agora, podemos chamar nossas funções como estávamos fazendo antes, mas dentro do onCreate chamaremos o manipulador que acabamos de criar:

No final, o arquivo index.ts deve ficar como este:

Agora, sempre que precisar criar uma nova função, você cria em um arquivo separado e depois importa no seu index.ts