O Laravel é um framework para PHP baseado na arquitetura Model View Controller (MVC). A partir dele, você pode criar sites, portais, APIs REST e afins. O AngularJS (ou Angular), por sua vez, é um framework de JavaScript criado por alguns funcionários da Google para atuar sobre uma estrutura Model View Whatever (MVW), permitindo ao desenvolvedor criar coisas incríveis!

Muitas pessoas se questionam sobre como é possível integrar o Laravel e o AngularJS, pois ambos possuem especificidades que tornam sua integração um tanto quanto abstrata. Aqui na IWWA nós utilizamos o Laravel para criar Restful APIs e o Angular como o consumidor desta API em diversas plataformas (sistemas, aplicativos, websites e afins).

Ambos frameworks possuem um sistema de roteamento de views e, aqui, nós utilizamos ambos. Para o Laravel, utilizamos:

  • o arquivo routes/api.php para determinar as rotas da API ;
  • e o routes/web.php, que apontará para o resources/views/index.php.

Este index é, na realidade, o nosso index.html do Angular.

Para integrar estes ambientes, utiliza-se da estrutura de pastas criada pelo próprio Laravel, onde todos os arquivos-fonte e assets (imagens, fontes, entre outros) são colocados dentro da pasta /public, que é o caminho enxergado pelas views do Laravel. Você talvez esteja se questionando como isso irá funcionar, tendo em vista que existem várias views. Isso acontece porque o Angular é um framework para Single Page Application (SPA), ou seja, na prática, todas as views do Angular são renderizadas a partir de um index.

Ou seja, a index.html do Angular é transformada em um arquivo PHP que será a view principal do Laravel. A partir daí, esta view terá acesso aos arquivos situados na pasta pública do Laravel, agindo, assim, como uma aplicação Angular comum.

Deixe uma resposta