Bootstrap e Vite#
O guia oficial sobre como incluir e agrupar CSS e JavaScript do Bootstrap em seu projeto usando Vite.
Quer pular para o final? Baixe o código-fonte e a demonstração funcional para este guia do repositório twbs/examples. Você também pode abrir o exemplo no StackBlitz para edição ao vivo.
Configuração#
Estamos construindo um projeto Vite com Bootstrap do zero, então há alguns pré-requisitos e passos iniciais antes de realmente começarmos. Este guia requer que você tenha o Node.js instalado e alguma familiaridade com o terminal.
- Crie uma pasta de projeto e configure o npm.
Criaremos a pasta
meu-projeto
e inicializaremos o npm com o argumento-y
para evitar que ele nos faça todas as perguntas interativas.
mkdir meu-projeto && cd meu-projeto
npm init -y
- Instale o Vite.
Diferentemente do nosso guia do Webpack, há apenas uma dependência de
ferramenta de construção aqui.
Usamos
--save-dev
para sinalizar que essa dependência é somente para uso em desenvolvimento e não para produção.
npm i --save-dev vite
- Instale o Bootstrap. Agora podemos instalar o Bootstrap. Também instalaremos o Popper, já que nossos menus suspensos, popovers e tooltips dependem dele para seu posicionamento. Se você não planeja usar esses componentes, pode omitir o Popper aqui.
npm i --save bootstrap @popperjs/core
- Instale a dependência adicional. Além do Vite e do Bootstrap, precisamos de outra dependência (Sass) para importar e empacotar adequadamente o CSS do Bootstrap.
npm i --save-dev sass
Agora que temos todas as dependências necessárias instaladas e configuradas, podemos começar a trabalhar na criação dos arquivos do projeto e na importação do Bootstrap.
Estrutura do projeto#
Já criamos a pasta meu-projeto
e inicializamos o npm.
Agora também criaremos nossa pasta src
e os arquivos da folha de estilo e do
JavaScript para completar a estrutura do projeto.
Execute o seguinte a partir de meu-projeto
ou crie manualmente a pasta e a
estrutura de arquivos mostradas abaixo.
mkdir {src,src/js,src/scss}
touch src/index.html src/js/main.js src/scss/styles.scss vite.config.js
Quando terminar, seu projeto completo deverá ficar assim:
meu-projeto/
├── src/
│ ├── js/
│ │ └── main.js
│ └── scss/
│ | └── styles.scss
| └── index.html
├── package-lock.json
├── package.json
└── vite.config.js
Neste ponto, tudo está no lugar certo, mas o Vite não funciona porque ainda não
preenchemos nosso vite.config.js
.
Configure o Vite#
Com as dependências instaladas e nossa pasta de projeto pronta para começarmos a codificar, agora podemos configurar o Vite e executar nosso projeto localmente.
- Abra o
vite.config.js
no seu editor. Como ele está em branco, precisaremos adicionar alguma configuração inicial a ele para que possamos iniciar nosso servidor. Esta parte da configuração informa ao Vite onde procurar o JavaScript do nosso projeto e como o servidor de desenvolvimento deve se comportar (atualizando a partir da pastasrc
com recarregamento automático).
import { resolve } from 'path'
export default {
root: resolve(__dirname, 'src'),
build: {
outDir: '../dist'
},
server: {
port: 8080
}
}
- Em seguida, preenchemos
src/index.html
. Esta é a página HTML que o Vite carregará no navegador para utilizar o CSS e o JS agrupados que adicionaremos a ele em passos posteriores.
<!doctype html>
<html lang="pt-br">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap com Vite</title>
<script type="module" src="./js/main.js"></script>
</head>
<body>
<div class="container py-4 px-3 mx-auto">
<h1>Olá, Bootstrap e Vite!</h1>
<button class="btn btn-primary">Botão primário</button>
</div>
</body>
</html>
Estamos incluindo um pouco do estilo Bootstrap aqui com
div class="container"
e <button>
para que possamos ver quando o CSS do
Bootstrap for carregado pelo Vite.
- Agora precisamos de um script npm para executar o Vite.
Abra o
package.json
e adicione o scriptstart
mostrado abaixo (você já deve ter o scripttest
). Usaremos esse script para iniciar nosso servidor de desenvolvimento Vite local.
{
// ...
"scripts": {
"start": "vite",
"test": "echo \"Erro: nenhum teste especificado\" && exit 1"
},
// ...
}
- E finalmente, podemos iniciar o Vite.
Da pasta
meu-projeto
no seu terminal, execute o script npm recém-adicionado:
npm start
Na próxima e última seção deste guia, importaremos todo o CSS e JavaScript do Bootstrap.
Importe o Bootstrap#
- Importe o CSS do Bootstrap.
Adicione o seguinte ao
src/scss/styles.scss
para importar todos os arquivos fonte Sass do Bootstrap.
// Importa todo o CSS do Bootstrap
@import "bootstrap/scss/bootstrap";
Você também pode importar nossas folhas de estilo individualmente, se quiser. Leia nossa documentação de importação do Sass para obter detalhes.
- Em seguida, carregamos o CSS e importamos o JavaScript do Bootstrap.
Adicione o seguinte ao
src/js/main.js
para carregar o CSS e importar todo o JS do Bootstrap. O Popper será importado automaticamente pelo Bootstrap.
// Importa nosso CSS personalizado
import '../scss/styles.scss'
// Importa todo o JS do Bootstrap
import * as bootstrap from 'bootstrap'
Você também pode importar plugins JavaScript individualmente, conforme necessário, para manter os pacotes pequenos:
import Alert from 'bootstrap/js/dist/alert';
// ou especifique quais plugins você precisa:
import { Tooltip, Toast, Popover } from 'bootstrap';
Leia nossa documentação do JavaScript para mais informações sobre como usar os plugins do Bootstrap.
- E pronto! 🎉 Com os arquivos fonte Sass e JS do Bootstrap totalmente carregados, seu servidor de desenvolvimento local deve ficar assim:
Agora você pode começar a adicionar quaisquer componentes do Bootstrap que quiser usar. Não deixe de conferir o projeto de exemplo completo do Vite para saber como incluir Sass personalizado adicional e otimizar sua construção importando apenas as partes do CSS e JS do Bootstrap que você precisa.
Viu algo errado ou desatualizado aqui? Abra um issue no GitHub. Precisa de ajuda para solucionar problemas? Pesquise ou inicie uma discussão no GitHub.