【发布时间】:2015-01-22 10:54:22
【问题描述】:
在我的控制器中,我调用了一个返回 JSON 对象的工厂:
function getData() {
trainDataFactory.getData()
.success(function (data) {
$scope.dataList = data;
})
.error(function (error) {
$scope.status = 'Unable to load data: ' + error.message;
});
}
然后我就可以像这样访问视图中的 $scope.dataList(有效):
{{ dataList[0].UnitNumber }}
但我想在控制器中访问同一个变量,但它不起作用 - 角度会中断。
我在控制器的开头尝试这个:
init();
function init() {
getData();
console.log($scope.dataList[0].UnitNumber);
$scope.firstDataListItem = $scope.dataList[0].UnitNumber;
}
getData() 被调用所以我不明白为什么 $scope.dataList 不可用??
【问题讨论】:
-
你能发布整个控制器吗?您可能在包含 $scope 元素并从控制器的内部范围到达 getData() 方法时做错了。
标签: javascript angularjs asynchronous angularjs-scope promise