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.