Formatação de Coluna JSON Não Renderiza: Causa Raiz e Correção
🔍 WiseChecker

Formatação de Coluna JSON Não Renderiza: Causa Raiz e Correção

Você aplicou formatação JSON a uma coluna de lista ou biblioteca do SharePoint, mas a formatação não aparece. A coluna exibe texto simples ou valores padrão em vez da saída estilizada que você projetou. Esse problema ocorre porque o SharePoint desabilita a formatação personalizada quando detecta um erro de sintaxe, uma propriedade não suportada ou uma restrição de segurança no código JSON. Este artigo explica as três principais causas raiz da falha na formatação JSON e fornece correções passo a passo para cada uma.

Principais Conclusões: Formatação JSON de Coluna Não Renderizando

  • Configurações da coluna da lista ou biblioteca do SharePoint > Formatar esta coluna: Abre o editor JSON onde você cola e aplica o código de formatação.
  • Guia Console das Ferramentas do Desenvolvedor (F12): Exibe a mensagem de erro de sintaxe JSON exata que impede a renderização.
  • Validador JSON como jsonlint.com: Detecta vírgulas, colchetes ou aspas ausentes antes de colar o código no SharePoint.

ADVERTISEMENT

Por que a Formatação JSON de Coluna Falha ao Renderizar

O SharePoint usa um esquema JSON restrito para formatação de colunas. O esquema permite apenas um conjunto predefinido de propriedades como elmType, txtContent, attributes e style. Se seu JSON incluir uma propriedade que o SharePoint não reconhece, todo o bloco de formatação é ignorado.

A segunda causa raiz comum é um erro de sintaxe. Uma vírgula ausente entre dois objetos, um colchete extra ou uma aspa não fechada fará com que o analisador JSON falhe silenciosamente. O SharePoint não exibe um pop-up de erro para problemas de sintaxe. Em vez disso, a coluna retorna ao seu estado não formatado.

A terceira causa é uma restrição de política de segurança de conteúdo. O SharePoint bloqueia JavaScript inline na formatação JSON desde 2021. Se seu código de formatação contiver eventos "onclick" ou "onhover" que chamam funções JavaScript, o SharePoint remove esses eventos e não renderiza a formatação.

Passos para Diagnosticar e Corrigir a Formatação JSON de Coluna

  1. Abra o painel de formatação da coluna
    Vá para a lista ou biblioteca do SharePoint. Clique no ícone de engrenagem e selecione Configurações da lista. Encontre a coluna que não está renderizando e clique no nome dela. Na página de configurações da coluna, role até Formatar esta coluna e clique.
  2. Verifique se há erros de sintaxe no JSON
    Copie todo o código JSON do painel de formatação. Cole em um validador JSON como jsonlint.com. Clique em Validar JSON. Se o validador mostrar um erro, corrija a linha indicada. Correções comuns incluem adicionar uma vírgula ausente após uma chave de fechamento ou remover uma vírgula à direita antes de um colchete de fechamento.
  3. Remova propriedades não suportadas
    Revise o JSON em busca de propriedades que não fazem parte do esquema de formatação de colunas do SharePoint. Os únicos valores válidos para elmType são div, span, a, img, button e svg. Remova quaisquer atributos personalizados como data- que não estejam explicitamente listados na documentação da Microsoft. Remova também quaisquer eventos onclick ou onmouseover.
  4. Teste com um modelo JSON mínimo
    Substitua todo o seu JSON por este modelo mínimo para confirmar que a formatação funciona:

    {"$schema":"https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json","elmType":"div","txtContent":"@currentField"}

    Clique em Visualizar. Se a coluna agora mostrar o valor do campo, o problema está na sua estrutura JSON original.

  5. Use as ferramentas do desenvolvedor do navegador para encontrar erros
    Pressione F12 para abrir as Ferramentas do Desenvolvedor. Vá para a guia Console. Recarregue a página. Procure por mensagens de erro vermelhas que contenham a palavra SPColumnFormatter ou JSON. A mensagem de erro informará o número exato da linha onde o analisador falhou.
  6. Reaplique a formatação após corrigir o JSON
    Depois de corrigir o JSON, cole o código corrigido de volta no painel Formatar esta coluna. Clique em Salvar. Atualize a página da lista para verificar se a formatação aparece.

ADVERTISEMENT

Se a Formatação JSON Ainda Não Renderizar

A formatação da coluna funciona para alguns usuários, mas não para outros

A formatação de coluna do SharePoint é no nível de exibição. Se um usuário não tiver pelo menos permissão de Leitura na lista, a formatação não será renderizada. Verifique o nível de permissão do usuário na página de permissões da lista ou biblioteca. Confirme também que o usuário não está visualizando a lista em um navegador que bloqueia a formatação JSON, como o aplicativo móvel do SharePoint sem a atualização mais recente.

A formatação aparece na visualização, mas não na exibição da lista

Isso acontece quando o JSON contém uma referência a um campo que não existe na exibição atual. Por exemplo, se sua formatação usa [$SomeField] mas SomeField não foi adicionado à exibição, a formatação não será renderizada. Adicione o campo referenciado à exibição editando a exibição atual e selecionando essa coluna.

A formatação parou de funcionar após uma atualização do SharePoint

A Microsoft ocasionalmente descontinua propriedades no esquema de formatação de colunas. Se sua formatação estava funcionando antes e parou após uma atualização do locatário, verifique o roteiro do Microsoft 365 para alterações na formatação de listas. A propriedade descontinuada mais comum é "onclick". Substitua quaisquer ações de clique pela propriedade "action" suportada usando os tipos de ação "executeFlow" ou "setValue".

A formatação JSON faz a página carregar lentamente

JSON complexo com muitos elementos "children" aninhados ou grandes blocos "style" pode degradar o desempenho da página. O SharePoint limita o tamanho total de um JSON de formatação de coluna a 100 KB. Se seu JSON exceder esse limite, trunque-o removendo declarações de estilo desnecessárias ou simplificando a estrutura aninhada.

Problema Erro de Sintaxe Propriedade Não Suportada Restrição de Segurança
Causa Vírgula, colchete ou aspa ausente no JSON Propriedade não está no esquema de formatação de colunas do SharePoint Evento JavaScript inline como onclick
Como detectar Validador JSON ou mensagem de erro no Console F12 Comparar JSON com a documentação do esquema Verificar onclick, onmouseover ou onchange
Correção Corrigir a sintaxe na linha indicada Remover a propriedade não suportada ou substituí-la por uma válida Substituir pela propriedade de ação do SharePoint ou remover o evento
Prevenção Usar um linter JSON antes de colar Sempre consultar o esquema mais recente da Microsoft Não usar eventos JavaScript na formatação

Agora você pode identificar por que a formatação JSON de coluna não renderiza e aplicar a correção adequada. Comece validando a sintaxe do seu JSON com uma ferramenta externa e removendo quaisquer propriedades não suportadas ou JavaScript inline. Para problemas persistentes, use as ferramentas do desenvolvedor do navegador para capturar a mensagem de erro exata do formatador de colunas do SharePoint.

Após corrigir a formatação, teste a coluna em várias exibições de lista para confirmar que ela renderiza consistentemente. Se você precisar de interatividade avançada, explore as extensões do SharePoint Framework em vez da formatação de colunas. Uma dica avançada é usar a propriedade "customAction" com um valor "action" de "setValue" para atualizar outra coluna quando um usuário clicar no elemento formatado.

ADVERTISEMENT