Как напечатать полный объект yaml или json в файл с узлом - PullRequest
0 голосов
/ 03 октября 2018

Я пытаюсь скопировать часть определений файла yaml в документ js для проекта codegen.Я попытался использовать регулярные выражения (которые отлично работали для копирования методов из сгенерированных swagger js-файлов), но, очевидно, regexp не очень хорошо обрабатывает информацию из yaml-файлов.Мне удалось вывести МОСТ того, что я хочу, в командную строку через console.log.Есть несколько массивов, которые просто говорят [Object], что проблематично.Я хотел бы распечатать их полное содержание.ОДНАКО, это не главная проблема.Когда я пытаюсь записать этот вывод в файл вместо консоли ... он просто говорит "[объект объекта] [объект объекта]" для моих 2 определений.Кто-нибудь делал что-то подобное раньше?Вот фрагмент моего кода и того, как выглядит вывод консоли на две строки выше TIA!

var doc = yaml.safeLoad(fs.readFileSync('path to my file\swagger.yaml', 'utf8'));
for(var d in doc['definitions']){
    logit(doc['definitions'][d]); //logit write to consle and a file
}

enter image description here

1 Ответ

0 голосов
/ 03 октября 2018

safeLoad предполагает, что вы используете библиотеку js-yaml .Он также предоставляет методы safeDump и dump.

yamlDef= yaml.safeDump(doc['definitions'][d]);
logit(yamlDef);

для преобразования YAML в JSON:

var json = JSON.stringify(yamlDef);
...