Как получить json строку вложенных интерфейсов машинописного текста - PullRequest
0 голосов
/ 09 июля 2020

У меня есть несколько вложенных интерфейсов в машинописном тексте, вроде этого:

export interface Person {
    name: string;
    age: number;
    status: Status;
}

export interface Status {
    location: string;
    activity: number;
}

Когда я получаю Person с моего сервера и хочу его console.log, я могу сделать это:

console.log(JSON.stringify(person))

Это отлично работает для полей Person верхнего уровня, но просто печатает «Object» для поля статуса. Я знаю, что это потому, что Status - это интерфейс и не имеет метода to JSON. Итак, мне нужно получить какой-то метод для «jsonify» всей структуры вложенных интерфейсов, ie, где ни один из интерфейсов не имеет метода JSON.

Как мне это сделать?

ОБНОВЛЕНИЕ: Оказывается, все действительно работает отлично. Проблема в том, что console.log будет только go до определенной глубины (например, 2), прежде чем начнет печатать такие вещи, как '[Object]' или '[Array]'. Чтобы увидеть полную распечатку, я использовал вместо этого:

console.dir(myobject, {depth: null});

По-видимому, это работает так же, как console.log, но выполняет полную распечатку с произвольной глубиной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...