获取 Restangular 对象属性
Get Restangular object attribute
收到Restangular
对象后,myObject
,看起来像:
为了获得 $object: array[2]
字段,我执行了 myObject[0]
,结果是 undefined
。
这是我的代码:
r = Restangular.service("patient_messages")
myObject = r.getList() # This returns the object on picture above
console.log("$object", myObject[0]) # result: $object undefined
谁能帮我弄到那个字段?
如果你试试这个:
console.log("myObject", angular.toJson(myObject));
你会得到这个输出:
# myObject {"restangularCollection":true,"$object":[]}
这是myObject
的真正价值,一个几乎空的对象,将在未来某个时刻填充数据:当调用完成 准确地说。这解释了不同的结果。
您在 控制器 中创建的 Restangular 实例将 return 一个 $q.defer().promise 对象,目的是允许相关方在 延迟任务 完成时访问其结果。
所以 myObject.$object[0]
还不存在,你的 控制器 不会得到它,直到你调用 promise.then()
方法,这将 return 新派生的 promise,看起来就像您在控制台中看到的那个 :
用这个替换你的代码console.log("$object", myObject[0])
,它将起作用:
myObject.then(function(){
console.log("$object", myObject.$object[0]);
});
收到Restangular
对象后,myObject
,看起来像:
为了获得 $object: array[2]
字段,我执行了 myObject[0]
,结果是 undefined
。
这是我的代码:
r = Restangular.service("patient_messages")
myObject = r.getList() # This returns the object on picture above
console.log("$object", myObject[0]) # result: $object undefined
谁能帮我弄到那个字段?
如果你试试这个:
console.log("myObject", angular.toJson(myObject));
你会得到这个输出:
# myObject {"restangularCollection":true,"$object":[]}
这是myObject
的真正价值,一个几乎空的对象,将在未来某个时刻填充数据:当调用完成 准确地说。这解释了不同的结果。
您在 控制器 中创建的 Restangular 实例将 return 一个 $q.defer().promise 对象,目的是允许相关方在 延迟任务 完成时访问其结果。
所以 myObject.$object[0]
还不存在,你的 控制器 不会得到它,直到你调用 promise.then()
方法,这将 return 新派生的 promise,看起来就像您在控制台中看到的那个 :
用这个替换你的代码console.log("$object", myObject[0])
,它将起作用:
myObject.then(function(){
console.log("$object", myObject.$object[0]);
});