如何在承诺解决后激活 ng-show
How to cause ng-show to activate after a promise resolves
我有一个 ng-repeat,里面有一个 ng-show。在我的控制器中的承诺解决之前,传递给 ng-show 的变量不会完全启动。
这导致 ng-show 总是以读取 "falsey" 对象结束,因为它在 promise 完成从服务获得正确结果之前读取值。
有没有办法让 ng-show 等到我的对象完全初始化?
您可以使用一个控制变量,例如 $scope.loaded = false
并将您的承诺设置为 true
。然后你可以在 ng-show
.
中使用这两个条件
在页面加载时设置一个标志值。
app.controller({.......
$scope.flagPromiseWait = false;
.........
.........
var onSuccess = function (result){
.............
............
$scope.flagPromiseWait = true;
},
var onError = function(err){
............
}
});
并在 HTML 上使用
<div ng-show="$scope.flagPromiseWait">...........<div>
我有一个 ng-repeat,里面有一个 ng-show。在我的控制器中的承诺解决之前,传递给 ng-show 的变量不会完全启动。
这导致 ng-show 总是以读取 "falsey" 对象结束,因为它在 promise 完成从服务获得正确结果之前读取值。
有没有办法让 ng-show 等到我的对象完全初始化?
您可以使用一个控制变量,例如 $scope.loaded = false
并将您的承诺设置为 true
。然后你可以在 ng-show
.
在页面加载时设置一个标志值。
app.controller({.......
$scope.flagPromiseWait = false;
.........
.........
var onSuccess = function (result){
.............
............
$scope.flagPromiseWait = true;
},
var onError = function(err){
............
}
});
并在 HTML 上使用
<div ng-show="$scope.flagPromiseWait">...........<div>