Acabei de usar a linha de comando ( CLI
) para inicializar um projeto Vue.js. O CLI
criado uma pasta src/components
e src/views
.
Já se passaram alguns meses desde que trabalhei com um projeto Vue e a estrutura de pastas parece nova para mim.
Qual é a diferença entre as pastas views
e components
em um projeto Vue gerado com vue-cli
?
Respostas:
Em primeiro lugar, ambas as pastas
src/components
esrc/views
contêm componentes Vue.A principal diferença é que alguns componentes do Vue atuam como visualizações para o roteamento.
Ao lidar com o roteamento no Vue, geralmente com o Vue Router , as rotas são definidas a fim de alternar a visualização atual usada no
<router-view>
componente. Essas rotas geralmente estão localizadas emsrc/router/routes.js
, onde podemos ver algo assim:Os componentes localizados abaixo
src/components
são menos prováveis de serem usados em uma rota, enquanto os componentes localizados abaixosrc/views
serão usados por pelo menos uma rota.O Vue CLI visa o desenvolvimento rápido do Vue.js, mantém as coisas simples e oferece flexibilidade. Seu objetivo é permitir que equipes de vários níveis de habilidade configurem um novo projeto e comecem.
No final das contas, é uma questão de conveniência e estrutura do aplicativo .
src/router
como esse clichê empresa.Escolha a estrutura do aplicativo que melhor se adapta ao projeto em que está trabalhando.
fonte
src/components
por esta convenção.Eu acho que é mais uma convenção. Algo que é reutilizável pode ser mantido na pasta src / components algo que está vinculado ao roteador pode ser mantido em src / views
fonte
Geralmente, as visualizações reutilizáveis são sugeridas para serem colocadas no
src/components
diretório. Exemplos como cabeçalho, rodapé, anúncios, grades ou qualquer controle personalizado, como caixas de texto ou botões com estilo. Um ou mais componentes podem ser acessados dentro de uma vista.Uma visão pode ter componente (s) e uma visão é na verdade destinada a ser acessada por url de navegação. Eles geralmente são colocados em
src/views
.Lembre-se de que você não é obrigado a acessar os componentes via url. Você é livre para adicionar qualquer componente ao
router.js
e acessá-lo também. Mas se for essa a intenção, você pode movê-lo para um emsrc/views
vez de colocá-lo emsrc/components
.Os componentes são controles de usuário em analogia aos formulários da web do asp.net.
É apenas sobre como estruturar seu código para melhor manutenção e legibilidade.
fonte
Ambas as pastas são basicamente as mesmas, uma vez que ambas contêm componentes, mas a estética do Vue é que os componentes que funcionarão como páginas (roteados para uma página semelhante para navegação) são mantidos na
/views
pasta, enquanto os componentes reutilizáveis como campos de formulário são mantidos na/components
pasta .fonte