我有一个像这样的嵌套aura:iteration:
<aura:iteration items="{!v.results}" var="res">
<tr class="slds-hint-parent">
<aura:iteration items="{!v.ColumnsNameArr}" var="colName">
<td>
<div class="slds-truncate" >
<a href="javascript:void(0);">{!res[colName]}}</a>
</div>
</td>
</aura:iteration>
</tr>
</aura:iteration>
如何编写正确的{!res [colName]}?可以在闪电中做这样的事情吗?
答案 0 :(得分:1)
您似乎想迭代res
属性,对我来说,类型为Map
。在Lightning Aura中,不可能在Map
(Apex)/ Object
(Javascript)上进行迭代。
您可以采取的解决方案是将res
映射转换为Array
(Java语言)类型,或者在Apex中将其转换为List
类型。
在Lightning Aura中,可以迭代Array
。
那看起来如何:
{
process: function() {
var res = { a: 1, b: 2};
var resArray = [];
for (var key in res) {
resArray.push({
key: key,
value: res[key]
});
}
// now, from here on you can use the 'resArray' to iterate in your Aura component
}
}
答案 1 :(得分:0)
有可能。在下一级使用迭代变量。 我认为这会起作用...
<aura:iteration items="{!v.results}" var="res">
<tr class="slds-hint-parent">
<aura:iteration items="{!res.ColumnsNameArr}" var="colName">
<td>
<div class="slds-truncate" >
<a href="javascript:void(0);">{!colName}}</a>
</div>
</td>
</aura:iteration>
</tr>