Angular工厂没有加载数据

时间:2014-03-27 14:19:35

标签: javascript angularjs coffeescript

我正在尝试将http调用移到角度工厂,但不确定数据未加载的原因。该问题与customersController有关,现在我在本地加载数据,但最终会将其移至$http

app.factory('apiFactory', ["apiFactory", "$http", (apiFactory, $http) ->
  factory = {}
  customers = [
    { name: 'Apple', city: 'Cupertino' },
    { name: 'Google', city: 'SF' }
  ]
  factory.getCustomers ->
    customers
])

这是Plunker http://plnkr.co/edit/itYnyzg2uS5xc6MJIIkE?p=preview

1 个答案:

答案 0 :(得分:1)

因为您正面临循环参考。

  • 定义apiFActory时不需要apiFactory,因此需要循环引用。
  • 工厂/服务应生成供控制器使用的API
如果我在任何地方都错了,请原谅我的咖啡剧本。我尝试将其与JavaScript方法的JavaScript相关联。我可能错了sytnax。

app.factory('apiFactory', ["$http", ($http) ->
  factory = {}
  customers = [
    { name: 'Apple', city: 'Cupertino' },
    { name: 'Google', city: 'SF' },
    { name: 'Mont Blanc', city: 'Paris' }
  ]

  return {
    getCustomers: () ->
      customers
  }
])

请参阅PLUNKR

的此修改版本