@mixator

Js библиотека для сериализации десериализации обьектов?

Знает кто?
Интересует возможность задать интерфейс или клас в TS и иметь гарантию что на выходе будет нужный обьект

Что-то вроде
export interface IterationsHistory {
    createDate: number;
    iterationId: string;
}

let foo = lib.deserialize({hello: '123', createDate: 124})

А на выходе
foo = {
  createDate: 123,
  iterationId: ''
}
  • Вопрос задан
  • 68 просмотров
Решения вопроса 1
Посмотрите на https://github.com/JohnWeisz/TypedJSON или https://www.npmjs.com/package/json2typescript . Общая задача - добавить информацию о сериализуемом объекте в рантайм (т.к. сам TS этого делать не будет by-design), для чего используются декораторы или другие схемы задания этой информации, и затем воспользоваться этой информацией при конвертации в JSON и обратно.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Jeer
@Jeer
уверенный пользователь
class User {
    id: number;
    name: string;
    constructor(userId: number, userName: string) {
        this.id = userId;
        this.name = userName;
    }
}
 
let tom: User = new User(1, "Tom");


У вас же и так typescript. Чем вам не подходят классы? Если вы описываете класс, а потом создаете объект этого класса, то тайпскрипт даёт вам гарантию, что это будет объект именно этого класса )

Переформулируйте вопрос, не очень понятно, что вам нужно
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы