2015-01-21 44 views
0
<div class="alert alert-warning" ng-hide="badges.length">  
    <strong>Empty!</strong> This Micro_organization has No badges. 
</div> 
<ul> 
    <li ng-repeat="badge in badges">{{ badge.title }}</li> 
</ul> 

即使徽章不爲空,郵件Empty! This Micro_organization has No badges.也會顯示一段時間。ng-hide元素會顯示一段時間,然後隱藏?

是否有解決方案,以便消息只顯示徽章是空的?

+0

如何使用ajax調用爲'badge'獲取數據? – 2015-01-21 05:06:06

+0

你可能想看看['ngCloak'](https://docs.angularjs.org/api/ng/directive/ngCloak)。 – 2015-01-21 05:07:04

+0

@ K.Toress是的..有些東西像'$ resource('/ ng/badges /');' – suhailvs 2015-01-21 05:07:09

回答

1

如果您使用ajax請求獲取數據,那麼badgesundefined直到ajax調用返回數據。

,直到數據接收badges.length將保持undefined然後再ng-hide="badges.length"將導致東西,如果你聲明$scope.badge u得到前ng-hide="false"這就是可能的部分apearing股利

--solution--

的情況下resource數據刪除該聲明。僅在resource呼叫後聲明$scope.badge。並使用

<div class="alert alert-warning" ng-hide="badges.length != 0">.. 

Plunker

+0

'ng-hide =「badges.length!= 0」'解決了問題...謝謝..我不知道如何, – suhailvs 2015-01-21 05:24:01

0

badges裝入前,變量是不確定的。您可以通過更改ng-hide表達式來解決此問題,以確保badges存在。

ng-hide="!badges || badges.length"