我最近和MeanJS一起玩,我遇到了一个我不太熟悉的问题,所以我希望有人可以在这里提供帮助。
我有一个角度控制器,可以像这样设置范围:
// Find existing Topic
$scope.findOne = function() {
$scope.topic = Topics.get({
topicId: $stateParams.topicId
});
};
我设置topic
中的$scope
。但是,我还需要从topic
获得一个值。让我们假设它是createdAt
之类的日期。我需要获取此值,然后对其执行另一个操作以设置另一个范围值。问题是,$scope.topic
对象是一个Angular承诺。如何从该承诺中获取值createdAt
(这是一个日期)?
答案 0 :(得分:2)
您可以使用promise回调。
$scope.findOne = function() {
$scope.topic = Topics.get({
topicId: $stateParams.topicId
});
$scope.topic.$promise.then(function(data) {
// access data.createdAt here
});
};
它的实际还取决于您想要使用它的位置。因此,如果要在视图中使用它,可以直接写为:
<span> Created at: {{topic.createdAt}}</span>
Angular将在加载数据时自动更新该范围变量。