Угловой метод get HttpClient возвращает объект с ошибочно названными атрибутами - PullRequest
0 голосов
/ 26 мая 2019

У меня есть веб-контроллер с методом GET Products.Этот метод возвращает Enumerable типа Product.

        public class Product
        {
            public float Price;
            public string Name;
            public string ImageURL;
            public int Quantity;

            public Product()
            {
                this.Quantity = 1;
            }
        }

Я создал угловой компонент, который считывает данные, предоставленные методом контроллера, следующим образом:

constructor(http: HttpClient, @Inject('BASE_URL') baseUrl: string) {
    this.grandTotal = 0;
    this.httpClient = http;
    this.url = baseUrl;
    http.get<Product[]>(baseUrl + 'api/SampleData/Products').subscribe(result => {
      this.products = result;
      this.slicedProducts = new Array<Product[]>();
      for (let i = 0; i < this.products.length / 3; i++) {
        this.slicedProducts[i] = this.products.slice(i * 3, i * 3 + 3);
      }

    }, error => console.error(error));
  }

Моя проблемачто имена свойств в объектах на угловой стороне имеют неправильные имена, например: Product.Quantity - это Product.quantity, поэтому, когда я пытаюсь использовать эти свойства позже в своих функциях, у меня появляется ошибка, что Quantity не существует.Когда я использую quantity, код работает.

1 Ответ

0 голосов
/ 26 мая 2019

Если вы используете Java.Проверьте настройки для преобразования объекта из объекта Java в объект Json.Предполагая, что вы используете Spring Boot на бэкэнде, вам может потребоваться настроить Jackson , чтобы сохранить имена полей как есть.Я предполагаю, что поля по умолчанию конвертируются в регистр верблюда .

...