【问题标题】:Best method to utilize enum with Angular / Mongoose / Node.js使用 Angular / Mongoose / Node.js 枚举的最佳方法
【发布时间】:2014-02-25 13:41:46
【问题描述】:

从 MongoDB 中获取值并使用 AngularJS 显示其对应值的最佳方法是什么?使用 Jade 非常简单,但使用 Angular 会变得混乱。

这是数据流:

  • 从 MongoDB 中获取一组项目,其中包含几个 作为枚举键的字符串字段
  • 枚举值作为对象存储在js中,如:

    enum = {types: {"type1" : "apple", "type2": "orange"}}
    
  • 使用jade,使用express和node,调用全局枚举函数

    #{getEnum("types", fruit.fruittype)}
    

    对于这种水果,fruittype 是“type1”。

但是,当我们尝试使用类似的 Angular 方法时,后端访问会变得复杂。在这种情况下打印对应关系的最佳解决方案可能是什么?一个有角度的工厂对象?获取的集合上的某种 map-reduce?

附:目前我直接forEach'ing列表,从函数中提取值,它可以工作,但我需要在对象上创建一个不同的字段。

【问题讨论】:

    标签: javascript node.js angularjs mongodb enums


    【解决方案1】:

    提示:您不能从 Html 模板调用后端服务。原因:角度 XHR 的完成会导致 rootScope.$apply 触发刷新 html 插值,这将再次触发无限循环中的 xhr。

    解决方案: 使用后端服务从控制器 构造函数 设置您需要的枚举。然后使用普通的角度绑定绑定到数据。

    对于后端服务,我建议使用 Angular 服务,它们基本上只是作为单例的 TypeScript 类:http://www.youtube.com/watch?v=Yis8m3BdnEM&hd=1

    【讨论】:

      猜你喜欢
      • 2012-10-21
      • 2011-10-16
      • 1970-01-01
      • 1970-01-01
      • 2013-04-14
      • 2011-04-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多