我正在与AngularJS进行后端验证集成。我需要在控件旁边显示一条错误消息。错误消息来自后端。控件由指令模板呈现。我尝试在模板中添加一个错误消息的span以及控件,但是我遇到了一个令人尴尬的情况。
以下是代码:
var myDirective = angular.module('myDirective', []);
myDirective.directive("textquestion", function() {
return {
template: '<input id="{{questionNumber}}" name="{{questionNumber}}" type="text" /><span ng-show="errors[{{questionNumber}}]">{{error[questionNumber]}}</span>',
restrict: 'A',
scope: {
questionNumber: 'questionNumber'
}
};
})
正如您所看到的,我想在html中呈现{{errors['1001']}}
,并使用&#39; 1001&#39;作为实际的questionNumber,所以错误消息可以绑定。但是在当前代码中,由于errors['1001']
在渲染时为空,因此该部分将在html中不呈现任何内容。
任何人都可以帮我了解如何在html中呈现实际的{{errors['1001']}}
吗?或者有更好的方法吗?请记住,控件是动态生成的,因此questionNumber需要是动态的。此错误消息来自后端,因此绑定需要在呈现后发生。
谢谢!
答案 0 :(得分:2)
您ng-show
中不需要{{}}。你传入ng-show
的内容已经是一个表达式
<span ng-show="errors[questionNumber]">{{errors[questionNumber]}}</span>