Parece um problema resolvido, mas não consigo encontrar uma solução para ele.
Basicamente, leio um arquivo JSON, altero uma chave e escrevo de volta o novo JSON no mesmo arquivo. Tudo funciona, mas eu perco a formatação JSON.
{
name:'test',
version:'1.0'
}
eu recebo
{name:'test',version:'1.1'}
Existe uma maneira no Node.js gravar JSON bem formatado em um arquivo?
JSON.stringify
engasga com objetos cíclicos eutil.inspect
não produz json válido. : \ Eu não encontrei nenhuma solução [nativa] para imprimir JSON bonita no NodeJSRespostas:
JSON.stringify
O terceiro parâmetro define a inserção de espaço em branco para uma impressão bonita. Pode ser uma sequência ou um número (número de espaços). O nó pode gravar no seu sistema de arquivos comfs
. Exemplo:Consulte os documentos JSON.stringify () em MDN , Node fs docs
fonte
"\t"
se desejar guias.Eu acho que isso pode ser útil ... Adoro código de exemplo :)
fonte
tmp
pasta existe ou isso pode falhar.tmp
pasta existe por padrãoSe você deseja apenas imprimir um objeto e não exportá-lo como JSON válido, pode usar
console.dir()
.Ele usa realce de sintaxe, recuo inteligente, remove aspas das chaves e apenas torna a saída a mais bonita possível.
Sob o capô, é um atalho para
console.log(util.inspect(…))
. A única diferença é que ele ignora qualquerinspect()
função personalizada definida em um objeto.fonte
Se você não deseja armazenar isso em nenhum lugar, apenas visualize o objeto para fins de depuração.
Você pode alterar o terceiro parâmetro para ajustar o recuo.
fonte
que tal isso?
fonte