Primeira Versão do Sistema de componentes Vue
This commit is contained in:
commit
35f9d57ce7
22 changed files with 1605 additions and 0 deletions
23
src/componentes/EliOlaMundo/EliOlaMundo.vue
Normal file
23
src/componentes/EliOlaMundo/EliOlaMundo.vue
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
<template>
|
||||
<v-container>
|
||||
<v-card class="mx-auto" max_width="400">
|
||||
<v-card-title>Olá Mundo!</v-card-title>
|
||||
<v-card-text>
|
||||
Este é um componente de exemplo integrado com Vuetify.
|
||||
</v-card-text>
|
||||
<v-card-actions>
|
||||
<v-btn color="primary" block>
|
||||
Botão Vuetify
|
||||
</v-btn>
|
||||
</v-card-actions>
|
||||
</v-card>
|
||||
</v-container>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { defineComponent } from "vue"
|
||||
|
||||
export default defineComponent({
|
||||
name: "EliOlaMundo",
|
||||
})
|
||||
</script>
|
||||
54
src/componentes/EliOlaMundo/README.md
Normal file
54
src/componentes/EliOlaMundo/README.md
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
# EliOlaMundo (Exemplo de Estrutura)
|
||||
|
||||
Este componente serve como **referência oficial** para a criação de novos componentes neste Design System. Utilize esta estrutura como guia.
|
||||
|
||||
## 📂 Estrutura de Pastas e Arquivos
|
||||
|
||||
Todo componente deve seguir rigorosamente a estrutura abaixo, utilizando **PascalCase** (PrimeiraLetraMaiuscula) para pastas e arquivos.
|
||||
|
||||
```
|
||||
src/componentes/
|
||||
└── NomeDoComponente/ <-- Pasta do Componente
|
||||
├── NomeDoComponente.vue <-- Lógica e Template (Vue 3 + TS)
|
||||
├── index.ts <-- Ponto de entrada (Exports)
|
||||
└── README.md <-- Documentação de uso (Props, Slots, Exemplos)
|
||||
```
|
||||
|
||||
## 📝 Como Criar um Novo Componente
|
||||
|
||||
1. **Crie a Pasta:**
|
||||
Nomeie a pasta com o nome do componente em PascalCase.
|
||||
*Ex: `src/componentes/MeuBotao/`*
|
||||
|
||||
2. **Crie o Arquivo Vue:**
|
||||
Nomeie o arquivo igual à pasta.
|
||||
*Ex: `src/componentes/MeuBotao/MeuBotao.vue`*
|
||||
- Utilize a Composition API com TypeScript.
|
||||
- Defina sempre o `name` do componente.
|
||||
|
||||
3. **Crie o Index (`index.ts`):**
|
||||
Este arquivo facilita a importação. Deve conter:
|
||||
```typescript
|
||||
import MeuBotao from './MeuBotao.vue'
|
||||
|
||||
export { MeuBotao }
|
||||
export default MeuBotao
|
||||
```
|
||||
|
||||
4. **Crie a Documentação (`README.md`):**
|
||||
Descreva o que o componente faz, suas propriedades (`props`), eventos (`emits`) e slots.
|
||||
|
||||
5. **Registre na Biblioteca:**
|
||||
Adicione o novo componente no arquivo principal `src/index.ts`:
|
||||
```typescript
|
||||
import { MeuBotao } from './componentes/MeuBotao'
|
||||
// ...
|
||||
export { MeuBotao }
|
||||
|
||||
export default {
|
||||
install(app: App) {
|
||||
// ...
|
||||
app.component('MeuBotao', MeuBotao)
|
||||
}
|
||||
}
|
||||
```
|
||||
4
src/componentes/EliOlaMundo/index.ts
Normal file
4
src/componentes/EliOlaMundo/index.ts
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
import EliOlaMundo from './EliOlaMundo.vue'
|
||||
|
||||
export { EliOlaMundo }
|
||||
export default EliOlaMundo
|
||||
Loading…
Add table
Add a link
Reference in a new issue