我有一個ng-repeat和一個過濾器的列表,基於html輸入的過濾器過濾器。如果過濾器產生一個空列表,我想向用戶顯示一些信息。我無法弄清楚如何...角度檢查什麼是過濾器返回
Search the list: <input type="text" ng-model="searchText">
<div ng-controller="my-ctrl">
<ul id="list">
<li ng-repeat="element in myElements | filter:searchText" >
{{element.data }}
</li>
</ul>
***<div>{{myElements.length}}</div>*** //length stays
// the same no matter what the filter is returning...
<div ng-show="myElements.length">My Informative Msg</div>
我想這樣做是表示基於myElements.length我的信息味精,我認爲過濾器將更新myElements在我的範圍值。但是,當我搜索項目(例如縮小或擴大列表)時,我發現myElements.length保持不變。
是否有一些優雅的解決方案來知道什麼時候過濾器是空的,或者更一般地知道過濾器正在返回什麼?
你可以在問題中添加模型。 myElements.length在javascript中的作用是array.length。它也可以作爲布爾值工作。 !數組爲空時myElements.length爲true。否則是錯誤的。我想這個問題是在你的模型(它不會更新myElements參考) 也許這可以幫助你:http://jsfiddle.net/C29As/ – Ivan
在你的例子中沒有過濾器......看不見這是同一件事 –