Backend enviou null: tratamento elegante no frontend
2024-05-17
Campo null nao e igual a chave ausente nem a string vazia. Misturar esses casos cria bugs de exibicao e PATCH ambiguo.
Tres tipos de vazio
Chave ausente, null literal e string vazia "" precisam de semantica alinhada com backend e OpenAPI.
TypeScript
nickname?: string e nickname: string | null representam contratos diferentes.
Apresentacao
Normalize na fronteira da API e use placeholders consistentes para valores nulos em listas e tabelas.
const label = user.nickname ?? "Not set";Formularios
Em PATCH, omitir geralmente indica sem mudanca; null geralmente indica limpar valor.