5

Angularjs フィルターでフィルター処理されているアイテムのリストがあります。ジェイドのマークアップは次のとおりです。

li(ng-repeat="parcel in parcels | filter : filterActiveAreaParcels")

フィルター関数が実行され、要素が DOM でレンダリングされた後に、読み込まれた要素の外観を向上させる jQuery プラグインを実行したいと考えています。どうすればいいですか?

4

1 に答える 1

1

フィルタがクレイジーな非同期処理を実行しておらず、パーセルリストにこのplnkrが実行するよりも妥当な数のアイテム(MiskoのSO回答を参照)が含まれていると仮定します。このplnkrのカスタムフィルターが比較的高価な操作(100万回の反復でループ)を実行していることに注意してください。ただし、my-pluginディレクティブ内の$scope。$watchは、リスト内のフィルター処理された各アイテムに対して時間どおりにjqueryプラグインを呼び出すことができます。

ng-repeatが実行される前にjqueryプラグインがまだ呼び出されている場合は、ディレクティブ内で$ timeout()を試してみてください。

于 2013-02-21T13:01:34.010 に答える