Codebase Overview
Esta seção fornecerá uma visão geral da organização do código-base React, suas convenções e implementação.
Se você quer contribuir para o React, esperamos que este guia ajude você a se sentir mais à vontade para fazer mudanças.
Não recomendamos necessariamente nenhuma dessas convenções nos aplicativos React. Muitas delas existem por razões históricas e podem mudar com o tempo.
Pastas de nível superior
Depois de clonar o repositório do React, você verá algumas pastas no nível superior:
packagescontém metadados (comopackage.json) e o código fonte (subdiretóriosrc) para todos os pacotes no repositório React. Se a sua alteração está relacionada ao código, o subdiretóriosrcde cada pacote é onde você passará a maior parte do seu tempo.fixturescontém alguns pequenos aplicativos de teste do React para os contribuidores.buildé a saída de compilação do React. Não está no repositório, mas aparecerá no seu clone do React depois de você fizer o build pela primeira vez.
A documentação está hospedada em um repositório separado do React.
Existem algumas outras pastas no nível superior, mas elas são usadas principalmente para as ferramentas e você provavelmente nunca as encontrará ao contribuir.
Testes Colocados
Nós não temos um diretório no nível superior para testes unitários. Em vez disso, nós os colocamos em um diretório chamado __tests__ relativo aos arquivos que eles testam.
Por exemplo, um teste para setInnerHTML.js está localizado em __tests__/setInnerHTML-test.js ao lado dele.
Avisos e Invariantes
O código-base do React usa console.error para exibir avisos:
if (__DEV__) {
console.error('Algo está errado.');
}Os alertas só são ativados no desenvolvimento. Na produção, eles são retirados. Se você precisar impedir a execução de algum caminho do código, use o módulo invariant em vez disso:
var invariant = require('invariant');
invariant