我开始使用angularjs
,并拥有此数据模型:
friends = [
{name:'John**amine**allo'},
{name:'Mary**aaa**mmm'},
{name:'Mike**bb**kkk'}
]
我想将每个名字拆分为' **'创建名称表。
我不知道是否有更直接的方法可以做到这一点(可能在角度滤波器模块中使用了一些滤波器),但这是我到目前为止所尝试的:
<table id="searchObjResults">
<tr><th>Name</th></tr>
<tr ng-repeat="x in friends">
<td ng-repeat="y in x.split('**')">
{{y}}
</td>
</tr>
提前感谢您的帮助。
答案 0 :(得分:1)
如果name
元素:
x
属性
<td ng-repeat="y in x.name.split('**')">{{y}}</td>
然而,这可能不是很好的想法你想要做什么。首先,您需要处理正确的表结构(正确的标头colspan
值)。其次,最好渲染已处理的数据结构,而不是转换模板内的值。它只是使它变得过于复杂,更不用说使手表表达更慢。
答案 1 :(得分:1)
您可以使用自定义过滤器指定分隔符:
<table id="searchObjResults">
<tr><th>Name</th></tr>
<tr ng-repeat="x in friends">
<td ng-repeat="y in x.name | mysplit:'**'">
{{y}}
</td>
</tr>
</table>
JS:
app.filter('mysplit', function() {
return function(data, sep) {
return data.split(sep);
}
});