Является ли приемлемой практика хранения данных экземпляра объекта на внешнем интерфейсе в приложении Angular2? - PullRequest
0 голосов
/ 10 мая 2018

При разработке приложения Angular2 с бэкэндом node.js рекомендуется хранить только идентификатор объекта и выполнять вызов API каждый раз, когда требуется конкретный экземпляр объекта?

например, если у меня есть такой пользователь:

{public email: string,
 public password: string,
 public roles?: Role[],
 public firstName?: string,
 public lastName?: string,
 public _id?: string}

и на своем веб-интерфейсе я сделал вызов API для списка пользователей, которые можно выбирать и редактировать. Будет ли лучше сделать вызов API, чтобы конкретный пользователь мог отредактировать? Или я должен сделать вызов API, чтобы получить список пользователей и сохранить его в виде массива во внешнем интерфейсе, например:

[{user}, {user}]

затем отправить запрос на исправление после завершения редактирования?

Меня беспокоит то, что состояние данных на сервере может меняться между выполнением вызова API для списка и изменением пользователя. Однако может быть быстрее сохранить элементы и извлечь их из памяти, чем выполнять вызов API.

Ответы [ 2 ]

0 голосов
/ 10 мая 2018

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

Если вы не сделаете новый вызов get, данные могут действительно измениться между списком get get и редактированием, и пользователь будет редактировать старые данные.

0 голосов
/ 10 мая 2018

Меня беспокоит то, что состояние данных на сервере может изменяться между выполнением вызова API для списка и изменением пользователя.Однако, может быть быстрее сохранить элементы и извлечь их из памяти, чем сделать вызов API.

В этом случае выполнение вызова, который вернет список [user1, user2, ..], является плохой идеей, потому чтодействительно, данные быстро устаревают.

Хороший совет - просто загрузить столько данных, сколько необходимо для правильного отображения страницы.Если вам нужно показать список данных, попробуйте взять несколько деталей (возможно, менее переменные), и как только запись будет выбрана из этого списка, вы делаете вызов API, чтобы полностью загрузить данные, относящиеся к конкретной записи, и, возможно,заполните подробный вид.

...