ユーザーの回答を評価するために切り取ったものを書いています。彼の答えが正しければ、最後に正しいアイコンを追加します。回答を評価するためのカスタム ディレクティブを作成しました。しかし、私は悪名高いエラーに遭遇し続けます: 10 $digest() 反復に達しました。中止します!エラー。
これが私のパーシャルのスナップショットです。
<li ng-repeat="answer in practice.currentQuestion.answers" class="answer">
<label class="radio multiple answer-body" evaluate-me is-correct="{'isCorrect': answer.isCorrect}" >
<div class="answer-body pull-left" ng-bind-html-unsafe="answer.body|removeemptyparagraphs"></div>
</label>
</li>
</ul>
そしてこれは私の指示であり、
app.directive('evaluateMe', function() {
return {
restrict : 'A',
scope:{
answer: '=isCorrect'
},
link : function(scope, element, attrs) {
var prepend;
console.log(scope.answer.isCorrect);
if(scope.answer.isCorrect){
prepend = '<i class="student-sprite-1-right-icon-for-qus pull-right"></i>';
}else{
prepend = '<i class="student-sprite-1-cancel-icon-for-qus pull-right"></i>';
}
element.append(prepend);
}
};
});
ビューから、またはループの途中でモデルを誤って更新しているときに、このエラーが発生することを理解しています。ただし、この場合、モデルを評価しているだけです。そして最も奇妙な部分は、ディレクティブの実行が完了し、HTML 文字列を DOM 内に追加することです。その後、エラーが発生します(スクリーンショットを参照してください)
注: 他の投稿を参照しましたが、解決策を見つけることができません。
この問題で私を助けてください。