我发现 Angular $resource 的行为非常奇怪。请检查以下代码行:
class Service
constructor: ($resource) ->
service = $resource '/record/:id'
Service::list = (cb) ->
service.query().$promise.then (data) ->
#result: data == [e, $promise: Object, $resolved: true]
cb data
Service::get = (id, cb) ->
service.get(id:id).$promise.then (data) ->
#result: data == {id: 1, name: 'name' ...}
cb format data
服务“get”方法返回服务器发送的正确值(对象),但“list”方法作为结果返回数组,其中包含$promise和$resolved...
有没有人有一些逻辑解释?
更新:
我发现了问题。服务结果是字符串数组,其结果是字符串字符数组。这可以通过使用 $http 而不是 $resource 来解决。
前任:
服务器端 -> ['list', 'of', 'elements']
客户端 -> ['l','i','s','t']