gpt4 book ai didi

javascript - 在 Angular 加载后加载 Jade 并解析所有变量

转载 作者:行者123 更新时间:2023-12-03 11:11:48 25 4
gpt4 key购买 nike

我有一个简单的基于nodejs的页面,其中在前端我使用Angular,在后端使用nodejs。现在,当我像这样通过 $http 在 Controller 中加载一些数据时 -

angular.module('student').controller('StudentDashBoardController', function($rootScope, $scope,$http,$location,mvNotifier) {
$scope.getUser = function(){
var url = '/getUser';
$http({method:'POST',url:url}).success(function(data,status,headers,config){
if(status==200){
$rootScope.user = data;
var date = new Date(data.date);
$rootScope.user.joinMonth=date.toUTCString().split(' ')[2];
$rootScope.user.joinYear=date.getYear();
}
else
mvNotifier.error("Some Internal Error ocurred. Please Try Again Later");
});
};
$scope.getUser();
});

然后超出此 Controller 的范围如果我尝试在像这样的 Jade 模板中显示用户 -

li.dropdown.user.user-menu
a.dropdown-toggle(href='#', data-toggle='dropdown')
i.glyphicon.glyphicon-user
span
| {{user.firstName}} {{user.lastName}}
i.caret
ul.dropdown-menu
li.user-header.bg-light-blue
h3 {{user.firstName}} {{user.lastName}}  
br
h5 Member since {{user.joinMonth}}, {{user.joinYear}}

然后我看到,在对 getUser 的调用完成之前,我看到 {{user.firstName}} {{user.lastName}}

调用 $http 调用结束后就恢复正常了。有没有办法延迟我的 Jade 渲染,直到 getUser 调用结束?

最佳答案

您是否尝试过使用 ng-bind 指令来防止“flash”?或者如果它不起作用,ng-cloak指令?

PS。在我看来,jade 模板是在你得到响应之前就已经编译好的,所以问题出在 Angular 方面,只是需要时间来执行并用正确的数据替换占位符。

关于javascript - 在 Angular 加载后加载 Jade 并解析所有变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27551089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com