我正在尝试使用ngMessages,但在指定要附加的表单元素时遇到了问题。
我可以使用它,它可以正常工作 -
ng-messages="FieldForm951.FormElement951.$error"
但是,(正如您可能从我的元素名称中所知)我正在创建一个动态表单,因此我无法像这样轻松地指定元素的名称。
这就是我想做的事,
ng-messages="FieldForm{{Questions[' + scope.$index + '].Id}}.FormElement{{.Questions[' + scope.$index + '].Id}}.$error"
真正唯一重要的因素是我希望能够使用花括号来指定自定义名称。这个确切的代码适用于ng-show,ng-required和我尝试过的任何其他内容,但不适用于ngMessages。我收到错误'语法错误:令牌' {'是一个意想不到的标记'。
我想因为ngMessages是一个自定义模块,它没有相同的功能,但有没有办法解决这个问题,我没有看到?
答案 0 :(得分:2)
好消息是,这显然是一个已知的错误。
请参阅此主题:Syntax error : ng-messages='{{field}}.$error'
上述问题的已接受答案包括this open issue的错误,我建议订阅,以便您知道何时可以返回使用带有更多动态表达式的ng-messages来代替此用例你选择的解决方法(我个人只是使用ng-show,因为这允许我在花括号内引用我动态命名的ng-forms,使事情看起来更容易阅读)。