Angularjs filter not null
Angular >=1.3.16 to latest (1.5.5 at time of writing/update) use ''
(empty string) (or '!!'
also works)
<ul> <li ng-repeat="detail in details | filter:{shortDescription: ''}"> <p>{{detail.shortDescription}}</p> </li></ul>
Example: http://jsfiddle.net/TheSharpieOne/1mnachk6/
Angular >=1.3.6 and <=1.3.15 use '!null'
<ul> <li ng-repeat="detail in details | filter:{shortDescription: '!null'}"> <p>{{detail.shortDescription}}</p> </li></ul>
Example: http://jsfiddle.net/TheSharpieOne/4wxs67yv/
Angular >=1.2 and <=1.3.5 use ''
(empty string) (or '!!'
also works)
<ul> <li ng-repeat="detail in details | filter:{shortDescription: ''}"> <p>{{detail.shortDescription}}</p> </li></ul>
Example: http://jsfiddle.net/TheSharpieOne/ovsqf17n/
Angular <1.2 '!!'
<ul> <li ng-repeat="detail in details | filter:{shortDescription: '!!'}"> <p>{{detail.shortDescription}}</p> </li></ul>
Example: http://jsfiddle.net/TheSharpieOne/RGEdc/
Overall, '!!'
has the best support, but ''
(empty string) is recommended and intended for this.
According to https://github.com/angular/angular.js/issues/11573 for Angular >= 1.4, the recommendation is to use '' which matches any primitive except null/undefined.
<ul> <li ng-repeat="detail in details | filter:{shortDescription: ''}"> <p>{{detail.shortDescription}}</p> </li></ul>
I think this is easier to read
<ul> <li ng-repeat="detail in details" ng-if="detail.shortDescription"> <p>{{detail.shortDescription}}</p> </li> </ul>