タグ内にある動的に作成された入力フィールドでサーバー側の検証を行っています。問題は、API エラー メッセージをコントローラーに直接設定するのではなく、テンプレートに戻す必要があることです。コントローラーで設定すると、すべての入力フィールドに影響します。
私の計画は、次のようなことをすることです:
#Template
..<span ng-show="innerNameForm.name.$error.apiResponse">{{ msg }}</span>
..<input type="text" ng-change="msg = someFunction(inputValue, innerNameForm)"...... />
#Controller
scope.someFunction = function(value, form){
apiMsg = timeout(function() {
var prom = vcRecordValidate.name(value, record_id).then(function(promise){
//If fails... do this
form.name.$setValidity('apiResponse', false);...
return promise; //THis contains the API error message
});
return prom;
}, 1000);
return apiMsg;
};
コードは単なる例であり、重要でないものがいくつか欠けています..