Как заполнить несколько ресурсов JS-данных в одном запросе

У меня есть приложение AngularJS, которое я конвертирую, чтобы использовать js-данные. Если у меня есть интерфейс REST, который возвращает объект JSON в этом формате

{
  data: {
    id: 1,
    name: Test,
    dept: 2
  },
  related: {
    DeptList: [
      { Id: 1, Name: Dept1 },
      { Id: 2, Name: Dept2 },
      { Id: 3, Name: Dept3 }
    ]
  }
}

Как я могу извлечь извлекает related.DeptList и вставлять его в js-данные? У меня есть функция десериализации, которая может возвращать объект данных, но не вижу, как извлечь связанные данные.

1 ответ

В JSData 2.x один из подходов состоит в том, чтобы перебирать relationList поле Resource перешел к deserializeи перенести отношения из вашего related поле в их ожидаемую позицию.

Вот плункер, который демонстрирует: https://plnkr.co/edit/suesxw?p=preview

Код в этом плунжере довольно общий, но, возможно, есть некоторые пропущенные крайние варианты и улучшения, которые могут быть сделаны, чтобы лучше соответствовать вашему варианту использования.

Вот немного другой пример, основанный на новой бета-версии JSData v3: https://plnkr.co/edit/IZJa6jP4cxySlbyRFYF3

Другие вопросы по тегам