Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 仅当json完全从angularJS中的ajax调用接收时更新视图_Javascript_Angularjs_Json_Ajax_Model View Controller - Fatal编程技术网

Javascript 仅当json完全从angularJS中的ajax调用接收时更新视图

Javascript 仅当json完全从angularJS中的ajax调用接收时更新视图,javascript,angularjs,json,ajax,model-view-controller,Javascript,Angularjs,Json,Ajax,Model View Controller,我对angularJS还不熟悉,还在学习。 我试图在标题中创建一个导航栏,从ajax调用中获取数据 但是,它会显示{{obj.pageData}},直到完全接收到数据。 每次我刷新页面时都会看到这种情况,这真是太烦人了 如何避免在视图中显示{{{obj.pageData}},而在从JSON接收到整个数据时直接更新它 以下是示例代码: 视图: 如果需要其他详细信息,请告诉我。您可以使用angular指令来防止angular html模板的简短显示 <div class="nav-center

我对angularJS还不熟悉,还在学习。 我试图在标题中创建一个导航栏,从ajax调用中获取数据

但是,它会显示
{{obj.pageData}}
,直到完全接收到数据。 每次我刷新页面时都会看到这种情况,这真是太烦人了

如何避免在视图中显示
{{{obj.pageData}}
,而在从JSON接收到整个数据时直接更新它

以下是示例代码:

视图:

如果需要其他详细信息,请告诉我。

您可以使用angular指令来防止angular html模板的简短显示

<div class="nav-center" ng-cloak>

</div>


另一个选项是使用
ngbind
而不是
{{}

您只需要设置一个条件来控制何时显示数据。为此,您可以使用whiter或

像这样:

<div ng-if="pageData" ng-cloack ng-repeat="obj in pageData.allChildList" class="hiding-div" ng-mouseover="showDiv()" ng-mouseleave="hideDiv()" >
    <!--- ... -->
</div>

在本例中,AngularJS计算表达式
ng if=“pageData”
,并且
pageData
为真时,它将只显示div


此外,您还可以使用,以避免页面出现任何可能的闪烁。

您可以使用角度分辨率,直到收到数据,然后仅呈现数据


选中此项

在发送路线中,您可以使用“解析”。因此,当路由发生变化时,它将进行http调用,解析承诺然后加载您的视图。a您的div上的ng if=“pageData”如何?
<div class="nav-center" ng-cloak>

</div>
<div ng-if="pageData" ng-cloack ng-repeat="obj in pageData.allChildList" class="hiding-div" ng-mouseover="showDiv()" ng-mouseleave="hideDiv()" >
    <!--- ... -->
</div>