## glossário

O que é Vue.js?

Vue.js é um framework JavaScript para construção de interfaces, criado em 2014 por Evan You — ex-engenheiro do Google que trabalhara com AngularJS e quis extrair suas melhores ideias num pacote mais leve. É mantido pela comunidade, sem uma grande empresa por trás.

Vue se define como progressivo: você pode usá-lo apenas para dar interatividade a uma página existente, incluindo um script, ou construir sobre ele uma aplicação completa com roteamento e estado global. Essa gradualidade é o que o torna acessível a quem vem do HTML.

Componentes de arquivo único

A marca registrada do Vue é o Single File Component: template, lógica e estilo do mesmo componente convivem num arquivo .vue, com o CSS podendo ser escopado automaticamente.

Um componente Vue completo
<script setup>
import { ref, computed } from 'vue';

const itens = ref([]);
const total = computed(() => itens.value.length);
</script>

<template>
  <h2>Tarefas ({{ total }})</h2>
  <ul>
    <li v-for="item in itens" :key="item.id">{{ item.texto }}</li>
  </ul>
</template>

<style scoped>
h2 { color: #14b8a6; }
</style>

Reatividade: a diferença central para o React

Enquanto o React re-executa o componente inteiro quando o estado muda e compara o resultado, o Vue rastreia quais dados cada parte do template usa e atualiza apenas o necessário. Na prática, isso significa menos preocupação com memorização manual: não há equivalente obrigatório a useMemo ou useCallback no dia a dia.

As diretivas do template

  • v-if / v-else — renderiza condicionalmente, removendo o elemento do DOM.
  • v-for — itera sobre listas, exigindo uma :key estável.
  • v-model — liga um campo de formulário ao estado nos dois sentidos, em uma linha.
  • v-bind — vincula atributos dinâmicos ao estado.
  • v-on — escuta eventos do DOM.

Quando escolher Vue

Vue costuma vencer quando a equipe vem de HTML/CSS e precisa de produtividade rápida, ou quando se valoriza ter roteador e gerenciador de estado oficiais em vez de escolher entre dezenas de opções. React tende a vencer pelo tamanho do mercado de trabalho e do ecossistema. Tecnicamente, os dois resolvem os mesmos problemas com qualidade equivalente. O panorama comparativo está em Tipos de frameworks.

## faq

Perguntas frequentes

Vue é mais fácil que React?

Para quem vem de HTML e CSS, geralmente sim: o template se parece com HTML e o v-model resolve formulários com pouquíssimo código. Para quem já pensa em JavaScript funcional, o React pode parecer mais natural por ser essencialmente funções e expressões.

Qual a diferença entre Options API e Composition API?

A Options API organiza o componente em blocos fixos (data, methods, computed) e é mais legível para iniciantes. A Composition API agrupa o código por funcionalidade dentro de um setup, o que escala melhor em componentes grandes e facilita reutilizar lógica. Ambas são suportadas no Vue 3.

Vue tem mercado de trabalho no Brasil?

Tem, mas em volume claramente menor que o de React. Vue aparece bastante em agências, projetos internos e produtos que priorizam velocidade de entrega. Quem busca a maior quantidade de vagas costuma priorizar React.