节点的最佳实践 - mongo - angular

时间:2014-02-05 13:13:32

标签: javascript node.js mongodb angularjs

我有一个使用node / mongo / angular设计的应用程序,我没有得到的是如何将我的数据从mongo导入我的页面的最佳方法?我可以使用节点,通过我的路由从我的模板(在这种情况下为hogan)发送回mongo中的数据,并使用mustachejs绑定。这适用于大多数事情。我有一个屏幕有一个相当数量的下拉列表,绑定它们的编辑方案现在似乎是一个挑战。我想让他们绑定一个角度模型,并以这种方式去做。通过节点中的路径获取数据是否更好,然后使用类似ng-init的东西并将其转换为角度?或者我最好不通过节点中的路径获取数据,然后使用angular来执行“获取”请求并以这种方式绑定?

2 个答案:

答案 0 :(得分:0)

the documentation of ng-init开始,更准确地说是从页面顶部的红色警告提示......:

  

ngInit的唯一合适用途是用于别名ngRepeat的特殊属性,如下面的演示所示。除了这种情况,您应该使用控制器而不是ngInit来初始化作用域上的值。

所以不,不要使用ng-init。虽然这对于从常规应用程序到单页面应用程序的延迟迁移是一个很好的策略,但从架构的角度来看,这是一个坏主意。

最重要的是,你失去了两件事:

  1. API。 SPA的好处在于,您拥有一个API,并且即使在拥有外部用户之前,您也在不断开发和维护它。
  2. 关注点的清晰分离。视图严格限于表示,可以由客户端缓存,所有数据都通过JSON API端点传输。

答案 1 :(得分:0)

我想说从Mongo获取数据到你的页面的最好方法是mnemosyn说,使用API​​。

基本上,您可以使用API​​路线,f.ex' / api / data'配置,然后它可以由角度服务使用(可以使用ngResource使事情更容易)。任何希望访问此数据的控制器都可以使用角度服务来获取它,使用它做一些事情,然后使用相同的角度服务更新它。