Configuração do projeto React: React, Storybook e Tailwind. epic-games-clone #2

Configuramos react, storybook e tailwind para trabalhar juntos nesta seção.

Configurar

Crie o aplicativo React!

Vamos usar create-react-app para inicializar um projeto react para nós. Atualize o my-app para o nome do seu projeto e execute o comando abaixo.

npx create-react-app my-app --template cra-template-pwa-typescript

Existem muitos outros modelos interessantes como redux-typescript . Este modelo CRA vem com um projeto de demonstração que dá uma boa visão geral do que podemos fazer com redux. Isso é especialmente útil se você é novo no redux ou mesmo revisitando o redux após a reforma do redux-toolkit. Com isso dito, encorajo você a criar o modelo redux do CRA e brincar com isso. Como estaremos usando redux neste tutorial extensivamente.

O comando acima pode levar alguns minutos para ser concluído. Feito isso, prossiga com o próximo passo.

Livro de histórias

O Storybook simplificou meu modelo mental de como vejo os componentes da web. Desenvolver componentes em um ambiente isolado pode exigir um pouco de esforço para configurar e manter, mas nos fornecerá resultados duradouros.

  • Isso nos permite focar em um componente de cada vez.
  • Construiremos componentes mais autossuficientes com foco no que eles obtêm e no que renderizam.
  • Vamos testar os cenários extremos de props. Cenários como como este cartão reagirá se receber uma string muito longa para um nome?

O Chromatic oferece uma enorme sensação de segurança contra as alterações inesperadas da interface do usuário. Ele nos protege de “Atualizou um arquivo css e quebrou muitos outros componentes!” cenários.

Em cada push, exige imediatamente que aprovemos as alterações da interface do usuário. Será muito difícil pegá-los manualmente. Eu encorajo você a verificarhttps://www.chromatic.com/Para saber mais. Vamos prosseguir para instalar o livro de histórias em nosso aplicativo.

npx sb init

Vento de cauda

A documentação oficial do vento de cauda para o CRA está bem escrita. Siga as etapas cuidadosamente na documentação vinculada abaixo e você ficará bem com sua configuração de vento de cauda.

Sinta-se à vontade para comentar se tiver problemas ao fazer a instalação do tailwind.

Notas:

  1. Use as extensões do VSCode Headwind de Ryan Heybourn . (Classifica as classes de forma opinativa) e Tailwind CSS IntelliSense de Brad Cornes . (Fornece o IntelliSense de classes de vento de cauda)
  2. Craco: usaremos o craco para substituir algumas das configurações do webpack sem simplesmente ejetar nossa configuração de scripts de reação.

Reduzi o App.tsx para o componente simples abaixo.

function App() {
  return (
    <div className='p-5 bg-blue-200 text-blue-900 shadow-lg'>
      Hello World
    </div>)
}

export default App

npm start

Vento de cauda com livro de histórias

Como o livro de histórias usa um ambiente de desenvolvimento separado, também precisamos configurar o vento de cauda para nosso livro de histórias.

Etapa 1 : Adicione a propriedade webpackFinal nas exportações .storybook/main.js.

// .storybook/main.js

const path = require('path')

module.exports = {
  stories: [
    '../src/**/*.stories.mdx', 
    '../src/**/*.stories.@(js|jsx|ts|tsx)'
  ],
  addons: [
    '@storybook/addon-links',
    '@storybook/addon-essentials',
    '@storybook/preset-create-react-app',
  ],
  webpackFinal: async (config) => {
    config.module.rules.push({
      test: /\.css$/,
      use: [
        {
          loader: 'postcss-loader',
          options: {
            ident: 'postcss',
            plugins: [
              require('tailwindcss'),
              require('autoprefixer'),
            ],
          },
        },
      ],
      include: path.resolve(__dirname, '../'),
    })
    return config
  },
})

Etapa 2 : Importe index.css para o arquivo .storybook/preview.js.

// .storybook/preview.js

import "../src/index.css"
// There are code after this...

npm run storybook

página de boas-vindas do livro de histórias

O npx sb init , nos deu uma página de amostra e introdução como mostrado acima. Convido você a verificar os links fornecidos na introdução.

Vamos visitar os componentes Button, Header e Page. Os três estão conectados. O botão tem algumas variações. O componente de cabeçalho usa o botão. O componente Página usa o componente de cabeçalho junto com o botão.

Tarefa:

Toda história é isolada. Imagine essa situação e pense a respeito.

  1. O componente filho recebe 5 argumentos .
  2. O componente pai recebe 5 argumentos . Além disso, o componente pai precisa receber os argumentos necessários para o componente filho que está renderizando.

Explore o livro de histórias dos componentes de demonstração que forneceu a resposta.

Obrigada.

Suggested posts

Evitando as consequências devastadoras de um derrame: aprendendo com a jornada de uma família.

Evitando as consequências devastadoras de um derrame: aprendendo com a jornada de uma família.

Introdução O AVC é uma emergência médica que pode atingir qualquer pessoa a qualquer momento. Ocorre quando o fluxo sanguíneo para uma parte do cérebro é interrompido, levando a uma perda repentina da função cerebral.

Jest — Uma poderosa estrutura de teste de JavaScript

Jest — Uma poderosa estrutura de teste de JavaScript

O teste é uma parte essencial do desenvolvimento de software. Ele garante que o código seja confiável, funcione conforme o esperado e reduza a probabilidade de erros.

Related posts

A Mentira do Cowboy

Como as megacorporações venderam aos americanos uma mentira robusta

A Mentira do Cowboy

É uma manhã brilhantemente dourada nas colinas do oeste, enquanto os primeiros raios de sol iluminam a grama congelada nas planícies. Um rebanho de gado Angus plácido, preto e maciço, é recortado contra o nascer do sol enquanto segue por uma trilha batida até um local que todos conhecem bem; a barra de café da manhã.

Criando um ambiente de trabalho seguro

Criando um ambiente de trabalho seguro

“Ele vai me proteger quando eu estiver em perigo. Ele me esconderá em sua tenda.

O assassinato de Jordan Neely e o problema do racismo “patriótico”

Os EUA podem dar o passo essencial de não igualar comportamento racista a ser um bom americano?

O assassinato de Jordan Neely e o problema do racismo “patriótico”

[Alerta de gatilho: este ensaio inclui capturas de tela de pessoas elogiando o assassino de Jordan Neely.] Os policiais finalmente - e talvez com relutância - acusaram Daniel Penny, o homem que sufocou Jordan Neely até a morte, por aquele homicídio.

Dois anos em design - O bom, o mau e o feio…

Dois anos em design - O bom, o mau e o feio…

“Ei, Siri, toque Me Dive, de Olivia Dean.” Era maio de 2021 quando comecei meu estágio na Future Academy Africa em Akure, Nigéria.