Pages

No padrão MVC, a pasta Pages seria a camada responsável por apresentar as informações de forma visual ao usuário. Em seu desenvolvimento devem ser aplicados apenas recursos ligados a aparência como mensagens, botões ou telas.

Seguindo nosso processo de comparação o View está na linha de frente da comunicação com usuário e é responsável transmitir questionamentos ao controller e entregar as respostas obtidas ao usuário. É a parte da interface que se comunica, disponibilizando e capturando todas as informação do usuário.

O termo Pages vem da tradução "páginas", como o nome propriamente dita, será onde que estará as páginas do sistema com suas rotas definidas em Routes.js.

Aqui, iremos orientar como criar uma página própria.

Atenção!

Saiba mais sobre import e export em: Como funciona o import e export do JavaScript?

Configurando

Passo 1 - Pasta da página

Por exemplo, iremos criar uma página inicial, para isso, iremos criar uma pastar no nome Home (o nome da pasta vai por sua escolha própria, ressalto que o nome deve estar em CamelCase) e dentro desta pasta, criaremos o arquivo index.js, teríamos algo parecido como:

src ├─ Pages │ ├─ Home │ │ └─ index.js │ └─ index.js

Passo 2 - Componente

Crie a exportação do objeto estendida de React.Component no arquivo index.js criada na pasta da página (seguindo no exemplo, na pasta Home).

Exemplos de código base:

Em Classe:

import React, { Component } from 'react';

export default class Home extends Component {
    constructor(props){
        super(props);
    }

    render(){
        return <div></div>
    }
}

Em Método Hook:

import React, { useState } from 'react';

export default function Home() {
  return (<div></div>);
}

Atenção!

Passo 3 - Defina a rota

No arquivo index.js da pasta root Pages (src/Pages/index.js), iremos tomas as seguintes etapas necessárias: importação e definição de rota.

Primeiro procedimento é importar sua página no cabeçalho deste arquivo, seguindo no exemplo anterior, veríamos algo do tipo:

//...
import Home from "./Home";

//...

No segundo procedimento é definir as rotas, as rotas dever ser inseridas antes da linha que contem o seguinte trecho de código:

//...

export default {pages}

Seguindo no exemplo anterior, veríamos algo do tipo:

//...

pages.push({
    "path":"/",
    "component": Home
});

export default {pages}

Repare que no JSON que estará utilizando para definir as rotas, temos os seguintes parâmetros:

  • path : string

    • Parâmetro obrigatório. Ele define o caminho de como será convocado a página em questão, respeitando a regra de negócio de React Router DOM - path;

  • component : React.Component

    • Parâmetro obrigatório que se deve passar a página que está sendo importada, respeitando a regra de negócio de React Router DOM - component;

  • ...

Contudo, veríamos o código todo como:

//...
import Home from "./Home";

//...

pages.push({
    "path":"/",
    "component": Home
});

export default {pages}

Passo 4 - Botão no menu

Atenção!

Para saber como criar um botão na barra de menu, acesse aqui;

Extra

A forma de como navegar por entre as páginas é bem simples que aproveita dos recursos de history.

O history disponibiliza as seguintes propriedades de ação:

history.push ( to : string , state ? : Object )

window.routerHistory.push("/home");

//ou

window.routerHistory.push("/home?the=query", { some: "state" });

//ou

window.routerHistory.push(
  {
    pathname: "/home",
    search: "?the=query",
  },
  {
    some: "state",
  }
);

history.replace ( to : string , state ? : Object )

window.routerHistory.replace("/home");

history.go ( delta : number )

window.routerHistory.go(-1);

history.back ( )

window.routerHistory.back();

history.forward ( )

window.routerHistory.forward();

Estilização

Last updated