在 MEAN 堆栈中查询数据库结果

Posted

技术标签:

【中文标题】在 MEAN 堆栈中查询数据库结果【英文标题】:Querying database results in the MEAN stack 【发布时间】:2017-06-30 07:55:56 【问题描述】:

的最佳位置是什么?我已经阅读了 Angular 和 Node/Mongoose 的示例,但哪个是最好的/正确的?你应该只从服务器发送需要的东西吗?还是应该尽可能发送方便客户端?

【问题讨论】:

【参考方案1】:

您的 Backend(Node)Frontend(Angular 2) 将通过 rest api 进行通信,您的数据库及其业务逻辑将驻留在服务器端。您将在此处使用 mongoose

您将编写端点(http 网络服务),每个端点将用于特定目的,例如 /login 将验证用户,/user 将返回经过验证的用户详细信息。 您的前端会使用这些网络服务并在您的用户界面中呈现结果。

您应该一次只从服务器发送必要的数据。不应发送额外的数据。

【讨论】:

感谢您的回复。我了解这些技术的位置/使用位置。但是,例如,如果我有多种用户类型,并且它们显示在同一页面上但在多个位置(即不在一个长列表中),我是否向服务器请求所有用户类型并使用 Angular 中的管道查询它们?或者我是否为每种类型向服务器发出请求并使用 Angular 显示它们?非常感谢。 如果您可以使用单个响应显示用户,那么这是可行的方法,但是由于您说它们将显示在多个位置,因此在这种情况下解析结果可能会很麻烦,您会更好使用第二种方法,并且您应该记住仅在必要时才访问后端。顺便说一下,您能否详细说明您想要达到的目标是什么? 我计划建立一个包含数百个条目的人员数据库。当在 Angular 中查看此数据库时,需要按状态(存档、实时、停用等)过滤这些人。但是,按照您的说法,听起来我应该从服务器调用具有每种状态的所有人,然后在 Angular 中过滤结果? 如果您一次获取所有用户,您的客户端应用程序将响应更快,因为它需要过滤。想象一下,如果您单击过滤器并向 Web 服务器发出请求,我认为这是一个糟糕的设计,一次获取所有条目然后在客户端过滤它们将是可行的方法。 你好@rahulkumar2048。感谢您回来查看。是的,您已经回答了上述回复中的问题:过滤客户端。感谢您的帮助!

以上是关于在 MEAN 堆栈中查询数据库结果的主要内容,如果未能解决你的问题,请参考以下文章

在给定坐标和最大距离的情况下查找到某个点的最近点 - 使用 Mongoose 和 MEAN 堆栈查询结果未定义

查询以获取对象数组中只有一个对象的结果对象

从客户端控制器 (MEAN.JS) 指定 Mongo 查询参数

MEAN 堆栈 - 在表格中显示数据时遇到问题

SQL:查询数据库中所有表的字段,并在查询结果中返回表、字段、字段描述

如何在 SQL Server 中加入两个查询的结果?