質問

取り組んでいるアプリの検索コンポーネントに取り組んでおり、フィルターを追加する必要がありました。例を見つけて、最初のフィルターを正常に動作させました。

今、私は問題に遭遇している2番目のフィルターを追加しようとしています...例では、フィルター機能を使用していることがわかりましたが、FilterFunctionのオプションしか得られません。なぜそれはなぜですか?

これがコードの例です

   productsCollection.filterFunctions =
[
 filterByPrice, filterByType,
 filterByCondition, filterByVendor
]

そして、これは私がやっていることです

acData.filterFunction = [filterByStatus, filterByDate]

しかし、このコードでは、次のエラーメッセージを取得します-1067:無関係なタイプ関数に対するタイプ配列の値の暗黙的な強制。

なぜこのエラーが発生し、アレイコレクションに複数のフィルターを追加するにはどうすればよいですか?

ありがとう!

役に立ちましたか?

解決

filterFunction 単一の関数に設定する必要があり、 Array または他のデータ型。複数の関数を組み合わせるには、次のようにそれらを組み合わせた機能を作成します。

acData.filterFunction = function(item:Object) 
    {
         return
             filterByPrice(item) &&
             filterByType(item) &&
             filterByCondition(item) &&
             filterByVendor(item);
    };

使用したサンプルを見た場合 filterFunctions 配列を受け入れた複数形で、リンクを投稿します。これは、標準のフレックスフレームワークや新しい4.0ベータAFAIKのどこにもありません。

他のヒント

それを機能させるために配列を拡張する必要があるようです。このリンクはあなたのためにそれを綴るべきです: http://blog.rotundu.eu/flex/arraycollection-with-multiple-filter-functions/

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top