0

で使用しようとしてbindonceng-repeatますが、エラーが発生しています:

ディレクティブ「ngRepeat」で必要なコントローラー「bindonce」が見つかりません!

問題の原因となっている div は次のとおりです。

<div bo-if="transcripts.userIsAuthorizedForCourseTranscripts" bindonce ng-repeat="module in transcripts.modules">
...
</div>
4

1 に答える 1

1

ng-repeat がある場合、実際にはクローンから要素が作成されます。これは、repeat 内のすべてについて、新しい要素に bo-if と bindonce の両方があることを意味します。権限がある場合にのみ繰り返しを実行したいようです。

したがって、if のみを繰り返したい場合は、次のtranscripts.userIsAuthorizedForCourseTranscripts === trueようにネストします。

// This assumes bindonce is declared above
<div bo-if="transcripts.userIsAuthorizedForCourseTranscripts">
    <div bindonce ng-repeat="i in stuff">
        #This area has bindonce using i
    </div>
</div>

このケースを示すフィドルも作成しましたhttp://jsfiddle.net/49c5C/1/

これが役に立ったことを願っています!

于 2014-01-28T02:35:17.877 に答える