2016-03-25 14 views
-2

角度コントローラでオブジェクトをフィルタリングしようとしています。私はいつも私の変数の結果として未定義となり、その理由を理解することができません。私は私のコンソールのスクリーンショットを作った。ここでオブジェクトとフィルタ関数を見ることができます。何が間違っているのですか?角度のあるオブジェクトをフィルタリングする

ここでは機能の主要部分です。それは道で何かをしなければならないので、フィルタを使用しています?:、バック未定義取得しています

this.update_lead_status = function (lead, sts) { 

      this.status = $filter('filter')(leads.leads_status, { ls_id: 3 }); 

     }; 

enter image description here

サービスによって提供されるJSONオブジェクト:

leads.leads_status [ 
{ls_id: 1, ls_class: 'lost', ls_name: 'Status1'}, 
{ls_id: 2, ls_class: 'lost2', ls_name: 'Status2'} 
] 

I ls_idに基づいてオブジェクト項目を取得し、変数を1つずつ自分のスコープに合わせようとしています!

var status = $filter('filter')(leads.leads_status, { ls_id: sts })[0]; 

今では私のために正常に動作します:おかげ

+1

[mcve] –

+0

を入力してください。問題のトラブルシューティングを行うことができるように十分な詳細がなくても、別の質問でもう一度やり直してください。 – charlietfl

+0

'$ filter 'フィルタ ')(leads.leads_status、{ls_id:' 3 '}); '? –

答えて

0

は、私はこのように、私のフィルタ機能の最後に[0]を追加する必要がありました!

+0

これは、オリジナルが未定義ではなく、実際の配列を返すという意味です。また、ここでは角度の必要はありません。配列には、同じように機能するネイティブフィルタメソッドがあります。 – ste2425

関連する問題