У меня есть класс, который я сериализую и загружаю как файл JSON. Для большей части, JSON.stringify
делает свое дело. Однако есть часть объекта, которая не может сериализоваться.
Мой класс
export class Manifest {
ManifestVersion: string;
ManifestDocumentation: string;
Name: string;
//some more properties here
parameters: Array<{}>;
}
Теперь где-то в моем приложении я помещаю sh объект в массив parameters
. Тип данных объекта - any
, так как его динамический c.
Объект, который нужно нажать:
sanitize() {
const _param: any = {};
//some code
_param = {
"Property One": {
type: '',
default: ''
},
PropertyTwo: {
type: '',
foo: [],
default: ''
},
...
};
return _param;
}
//...
// somewhere
this.manifest.parameters.push(this.sanitize());
Каждое свойство объекта может иметь два слова, например "word1 word2". Другое дело, что каждый объект имеет свою схему.
Теперь я попытался выполнить это через JSON.stringify(manifest, null, '\t')
, но массив parameters
выводит только:
{
//some other properties
"parameters": [
{}
]
}
Вопросы:
- Почему он содержит пустой объект?
- Как мне добиться желаемого результата?
- Я собираюсь разработать C#, а затем теперь Angular. Я знаю
JsonConvert.SerializeObject(..)
, чтобы сделать это довольно хорошо. Есть ли в npm подобная библиотека, которую я могу использовать для этого?