Angular HttpClient SerializedName полей в модели - PullRequest
0 голосов
/ 10 июля 2020

Есть ли способ добавить какой-либо атрибут / аннотацию в поле класса модели, чтобы отметить, что такое сериализованное имя (вопрос основан на @SerializedName из Gson) поля в json ответе от сервера?

Например, ответ сервера содержит поля типа start_date или some_date, и я хотел бы, чтобы поля в моей модели назывались startDate или acquisitionDate. В моем сервере Spring поля в модели ответа помечены @SerializedName("start_date").

Я использую Angular 10 и HttpClient следующим образом:

httpClient.get<MyModel[]>(environment.apiUrl + '/getData')
            .pipe(map(models => models.map(m => Object.assign(new MyModel(), m)));

1 Ответ

0 голосов
/ 13 июля 2020

Я нашел и использовал библиотеку https://github.com/typestack/class-transformer Также, если кому-то понадобится, есть похожие библиотеки https://github.com/weichx/cerialize и https://github.com/kmathy/cerializr

...