我有一个应用程序,它有一个登录按钮,以及一些其他组件。当我加载页面时,我必须调用身份验证REST服务,如果禁用身份验证,我不应该显示“登录”按钮。同样,我必须在启用身份验证时显示“登录”按钮。
据我所知,REST api调用是异步的,在我得到响应之前,页面被加载了。
我甚至尝试使用下面链接中提到的承诺,但它无济于事 http://markdalgleish.com/2013/06/using-promises-in-angularjs-views/
如何根据REST API调用的响应有条件地呈现视图?
答案 0 :(得分:0)
您可以使用angularjs的ng-if指令。更新REST API响应的范围变量以使ng-if = true。这将仅在完成身份验证时创建登录按钮。
答案 1 :(得分:0)
你可以使用ng-show指令。根据身份验证Api的响应,您可以使用show / hide登录按钮。
答案 2 :(得分:0)
首先将一个范围变量设置为false,使用此变量隐藏登录按钮。
$scope.loginButton = false;
您可以使用ng-show或ng-if指令隐藏和显示html元素。
<input type="submit" ng-show = "loginButton">
调用REST服务,您将从服务获得响应,然后检查响应。如果启用了身份验证状态,则将范围变量设为true。
$scope.loginButton = true;