Angularjs 角度隐藏ng重复中数组中的第一个元素而不清空数组
试着做这样的事情Angularjs 角度隐藏ng重复中数组中的第一个元素而不清空数组,angularjs,angularjs-ng-repeat,Angularjs,Angularjs Ng Repeat,试着做这样的事情 <md-card class="saved-search animated" ng-repeat="search in vm.savedSearches" md-theme="default" md-theme-watch> <md-card-header> <md-card-header-text> <span class="md-title md-body-2">{{search
<md-card class="saved-search animated" ng-repeat="search in vm.savedSearches" md-theme="default" md-theme-watch>
<md-card-header>
<md-card-header-text>
<span class="md-title md-body-2">{{search.address[0]}}</span>
<span class="md-subhead">{{search.address | remainingAddress}}</span>
</md-card-header-text>
function remainingAddress() {
return remainingAddress;
////////////////
function remainingAddress(input) {
let newArray = input;
return input ? newArray.shift().join(',') : input;
}
}
{{search.address[0]}
{{search.address | remainingAddress}
函数remainingAddress(){
返回剩余地址;
////////////////
函数剩余地址(输入){
让newArray=input;
返回输入?newArray.shift().join(','):输入;
}
}
我想显示的是地址的第一行作为标题,它起作用,地址的剩余部分显示在下一行。但问题是剩余的地址和shift()总是返回空数组,我想是因为多重shift()清除了循环中的数组。shift不返回数组,它返回移除的数组元素,试试这个
function remainingAddress() {
return remainingAddress;
////////////////
function remainingAddress(input) {
let newArray = input;
if(input){
newArray.shift()
return newArray.join(',')
}
return input;
}
}
shift不返回数组,它返回已删除的数组元素,请尝试以下操作
function remainingAddress() {
return remainingAddress;
////////////////
function remainingAddress(input) {
let newArray = input;
if(input){
newArray.shift()
return newArray.join(',')
}
return input;
}
}
您可以将
limito
过滤器与数组一起使用。join
方法:
<span class="md-title md-body-2">{{search.address[0]}}</span>
<span class="md-subhead">
{{ (search.address | limitTo: -(search.address.length - 1)).join(',') }}
</span>
{{search.address[0]}
{(search.address | limito:-(search.address.length-1)).join(',')}
通过将负数-n
传递给limito
过滤器,您要求它返回数组的最后n
项
参考:。您可以使用
limito
过滤器和数组。join
方法:
<span class="md-title md-body-2">{{search.address[0]}}</span>
<span class="md-subhead">
{{ (search.address | limitTo: -(search.address.length - 1)).join(',') }}
</span>
{{search.address[0]}
{(search.address | limito:-(search.address.length-1)).join(',')}
通过将负数-n
传递给limito
过滤器,您要求它返回数组的最后n
项
参考:。是的,很抱歉我也尝试了类似的方法,它仍然会完全清除原始数组,我不太理解。我想这是因为它处于循环中,它只是完全清除了数组。是的,很抱歉我也尝试了类似的方法,它仍然会完全清除原始数组,我真的不明白。我想这是因为它在一个循环中,它只是完全清除了数组。是的,就是这样,我不知道这个负面的把戏。多谢了,就这样,我不知道这个消极的把戏。谢谢