Views

Não é nada usual retornar uma simples string após receber uma requisição e por isso deve-se utilizar as views agregadas às rotas e controllers para tornar a resposta mais útil.

As views podem ser desenvolvidas em /resources/views e devem ser criadas em .html. É possível também receber variáveis que serão alteradas no conteúdo final:

namespace App\Controllers\Pages;

use \App\Utils\View;

class Product {
    public static function getProduct($req, $res) {
        $content = View::render('pages/product', [
            'name' => "Produto nome",
            'description' => "Produto descrição"
        ]);
        return $res->send(200, $content);
    }
}

Arquivo /resources/view/pages/product.html:

<h1>{{name}}</h1>
<p>{{description}}</p>

<!-- <h1>Produto nome</h1> -->
<!-- <p>Produto descrição</p> -->

Padronizando páginas

É possível utilizar a classe já criada Page para popular páginas com conteúdos padrões como o header, navbar e footer:

Com uso da classe Page o $content irá conter a junção dos arquivos page.html, header.html e footer.html (já existentes em /resources/view/pages).

É possíve também adicionar novos arquivos padrões para cabeçalho e rodapé, podendo por exemplo criar diferentes cabeçalhos para a área pública e área administrativa:

Caso deseje que o header e footer não sejam inseridos, defina-os como false.

Os arquivos devem ser criados em resources/views/pages para que sejam identificados na função getPage().

Variáveis padrões

O arquivo define.php define algumas variáveis padrões para uso nas views:

Adicione as variáveis padrões para utiliza-las em toda criação de view.

As variáveis padrões facilitam na inserção de dados importantes para usabilidade, por exemplo:

A inserção de uma mídia ou link pode ser feito da seguinte maneira:

Last updated