readonly() Criar um proxy somente leitura

Última atualização: 2026-10-22

readonly() Criar um proxy somente leitura

readonly() cria um proxy somente leitura dos dados originais: qualquer escrita emite um aviso e falha, protegendo os dados contra mutações acidentais.

GrupoReatividade: Essencial
TipoAPI
EscopoNo Componente
Versão do Vue3.0+
Suporte a SSRSim

📝 Sintaxe

const config = readonly({ theme: 'dark' })
config.theme = 'light'  // ❌ aviso: Set operation on key failed

⚙️ Argumentos

targetUm objeto ou um ref (passar um ref retorna um ref somente leitura)

Retorno:Um proxy profundo somente leitura

▶ Exemplo

Edite o código abaixo e veja o resultado ao vivo:

Saída:

Theme stays dark; clicking logs a failed-write warning and nothing changes.

💡 Pontos-chave

💡 Dica Cenário típico: ao passar um objeto de configuração a um componente filho, envolva-o com readonly para impedir que o filho altere dados do pai.
ℹ️ Nota O readonly é unilateral: mudanças na origem (objeto original) se refletem no proxy somente leitura; escritas na direção contrária são bloqueadas.
⚠️ Aviso Em desenvolvimento, escritas emitem aviso; em produção, falham silenciosamente — não dependa do aviso como validação em tempo de execução.
Mais casos em breve.

📚 Tutoriais Relacionados

❓ FAQ

P O readonly impede todas as modificações?
R Ele intercepta escritas feitas pelo proxy; se você burlar o proxy e operar o objeto original diretamente, ainda pode modificar — o proxy somente leitura não equivale a imutabilidade.
P Depois de envolver com readonly, os dados ainda são atualizados?
R Sim: mudanças nos dados de origem se refletem no proxy somente leitura; o que não se pode é escrever na direção contrária.
P Qual a diferença para Object.freeze?
R freeze congela o objeto real de forma irreversível; readonly é apenas uma camada de proxy que intercepta e preserva o rastreamento de reatividade.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%