是否有可能以某种方式使用类似于{{mystr | split(last) }}
的东西?
我希望已经有一个管道。
答案 0 :(得分:7)
您需要一个自定义管道。你可以这样实现:
@Pipe({
name: 'split'
})
export class SplitPipe implements PipeTransform {
transform(val:string, params:string[]):string[] {
return val.split(params[0]);
}
}
并像这样使用它:
{{mystr | split:last }}
其中last
是组件的一个属性,对应于分隔符。
答案 1 :(得分:3)
我不确定last
是什么。如果你用一些分隔符将字符串分开,我猜你的意思是你想要字符串中的最后一组字符。例如,如果字符串为abc,def,ghi
且分隔符为,
,那么您需要ghi
。
@Pipe({ name: 'splitLast' })
export class SplitLastPipe implements PipeTransform {
transform(value:string, [separator]):string {
let splits = value.split(separator);
if(splits.length > 1) {
return splits.pop();
} else {
return '';
}
}
}
{{mystr | splitLast:','}}