使用node.js后端开发Angular2应用程序时,最好只存储对象的id,并在每次需要特定对象实例时进行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调用更快。
答案 0 :(得分:1)
我担心的是服务器上的数据状态可能会发生变化 何时进行API调用以及编辑用户。 但是,存储项目并从中检索项目可能更快 内存比进行API调用。
在这种情况下,进行一次返回[user1, user2, ..]
列表的调用是一个坏主意,因为实际上数据会很快变老。
好的建议是只需加载尽可能多的数据来正确显示页面。如果你需要显示一个数据列表,尝试采取一些细节(可能是较少变量的),一旦从该列表中选择一条记录,然后你做一个api调用来完全加载与特定记录相关的数据,也许填充详细视图。
答案 1 :(得分:0)
如果您担心数据可能会在列表的API调用和将要编辑的用户之间发生变化,最好再为该用户发出另一个请求。
如果您没有进行新的来电,数据确实可以在列表获取调用和编辑之间切换,用户将编辑旧数据。