【问题标题】:Business logic in ReactJS webappReactJS webapp 中的业务逻辑
【发布时间】:2015-08-15 10:58:14
【问题描述】:

我开发了 webapp(ReactJS、Flux、React-router;服务器:NodeJS、Express) 它最初只加载 html(同构方式)。

现在我需要从客户端隐藏一些业务逻辑。 例如,我有评级系统。 用户应该只有在他之前没有投票的情况下才能投票。 我想,应该是这样的: 用户按下投票按钮。这个按钮的处理函数发送一个对象到服务器端:

{
userName: login,
password: password,
votedObjectId: objectId
} 

服务器应检查该用户是否存在于数据库中(通过用户名和密码),以及该用户是否曾为该对象投票过(通过用户名和投票对象Id)。 如果一切正常,服务器应该在 Rating 表中添加行(userName 和 votedObjectId)

不知道怎么实现。

我想,我应该在 server.js 文件中创建一个 js 方法,其中将包含此逻辑。并且客户端应该触发这个方法。客户端如何向 server.js 发送请求?

【问题讨论】:

    标签: node.js express reactjs


    【解决方案1】:

    您有正确的想法,您需要将您的交互发布到服务器并让它处理业务逻辑。由于您的问题具体是如何将请求发送到服务器以触发此行为,我猜您尚未在您的应用程序中实现任何 RESTful 层。

    Express.js 完全有能力做到这一点,所以我会寻找关于使用 Express 框架实现从客户端到服务器的简单 REST 调用的教程。您需要决定如何处理来自浏览器的 AJAX 调用,是通过使用 JQuery 等简单方法还是使用更成熟的建模层(例如 Backbone 等)。

    在我看来,您开始发帖的技术列表忽略了这一层,并且由于 React 是 MVC 中的“视图”,而 React-Router 是(某种)“控制器”,您仍然需要“模型”部分 - 以某种方式在 Javascript 世界中表示您的服务器 API。

    【讨论】:

      猜你喜欢
      • 2013-02-12
      • 1970-01-01
      • 1970-01-01
      • 2012-02-09
      • 2010-12-18
      • 1970-01-01
      • 1970-01-01
      • 2011-03-23
      • 2010-12-24
      相关资源
      最近更新 更多