मैं निम्नलिखित सेटअपAngularJS काम नहीं कर फ़िल्टर करते हैं गुण अपरिभाषित है
$scope.array =
[
{propertyA: "test",
propertyB: {
propertyC: [true, true, false]
}
},
{propertyA: "test2"},
{propertyA: "test3"}
]
और फिर
<div ng-repeat="item in array| filter :{propertyB: ''} :true">
{{item.propertyA}}
</div>
तो समस्या है:
इस सेटअप प्रदर्शित नहीं करता है कुछ भी
अगर मैं
|filter :{propertyB: '!!'} :true
करने के लिए बदल अगर मैं|filter :{propertyB: undefined} :true
करने के लिए बदल यह कुछ भीप्रदर्शित नहीं करता है यह सब कुछ को प्रदर्शित करता है
मैं यह पता लगा नहीं कर सकते।
लक्ष्य: मैं उन वस्तुओं को प्रदर्शित करना चाहता हूं जिनमें propertyB
अपरिभाषित है और अन्य मामले में अन्य तरीकों से।
संपादित करें 1: jsfiddle UPDATED
संपादित करें 3:: यदि मैं angular.equals(item.propertyB, undefined)
साथ सरणी पर पुनरावृति मैं false, true, true
संपादित 2 मिलता है मैं सवाल
आपने जो jsfiddle जोड़ सकते हैं या –
plunkr इस सवाल का जवाब यहां कर दिया गया है http://stackoverflow.com/questions/25177004/ng-repeat-filter-for-where-an-attribute-is-undefined –
बस सच हटाएं और सबकुछ काम करता है! तथा !!। – Sim