我有以下Angular 1.0代码:
<div ng-repeat="ebook in vml.ebooks">
<img data-ng-src="{{ ebook.files.filter(function (v) { return v.type === 'ebook.cover'; })[0].url }}" />
</div>
但是我得到了错误:
"Error: [$parse:syntax] Syntax Error: Token 'ebook' is an unexpected token at column 55 of the expression ['ebook.files.filter(function (v) { return v.type === 'ebook.cover'; })[0].url'] starting at [ebook.cover'; })[0].url'].
我该如何解决?
可以将其转换为过滤器吗?
在对象(文件)列表上,我需要获取给定类型的第一个对象。
最佳答案
您不能在Angular表达式中使用Array.prototype.filter
方法。但是,您应该能够使用Angular过滤器来做到这一点。相应的表达式将如下所示:
data-ng-src="{{ (ebook.files | filter:{type:'ebook.cover'})[0].url }}"
关于javascript - 获取带有Angular条件的第一个元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38573969/