是否可以在属性标记中的Angular JS表达式中包含换行符?像这样:
<p ng-repeat="
foo in foos
| filter:{attr: 'something really long'}
| orderBy:bar">
{{foo}}
</p>
编辑:澄清一下,上述说法不起作用。我想知道是否有其他语法允许将这种表达式分成多行。
答案 0 :(得分:2)
表达式可能跨越多行。但是,如果尝试在多行上跨越表达式,ng-repeat会抛出错误。
看看这个plunker: 在ng-repeat表达式中添加一个新行,然后打开浏览器控制台以查看错误消息。
答案 1 :(得分:2)
angular.js解析器能够处理它,但是在将它交给解析器之前有一个快速的正则表达式检查(参见http://docs.angularjs.org/error/ngRepeat:iexp):
请注意,ngRepeat指令使用正则表达式解析表达式 在将集合和可选的id发送到AngularJS解析器之前。 此错误来自正则表达式解析。
我提交了一个错误来放宽此限制:https://github.com/angular/angular.js/issues/5537,您可以在此期间手动修补它,它只有1个字符:m
(/regex/m
)。
答案 2 :(得分:0)
是的,可以将多行属性与任何HTML元素一起使用,包括AngularJS指令。