1

我正在尝试实现截断管道:

import { Pipe, PipeTransform } from '@angular/core'

@Pipe({ name: 'truncate' })
export class TruncatePipe implements PipeTransform {
    transform(value: string, amount: number, truncateChar: string) : string {
        console.log("amount", amount);
        console.log("truncateChar", truncateChar);
        let limit = amount ? amount : 10;
        let trail = truncateChar ? truncateChar : '...';
        return value.length > limit ? value.substring(0, limit) + trail : value;
    }
}

不知何故,在我的模板中它总是打印undefined.truncateCharamount

在我的模板中,我尝试了以下语法(轮到他们自己):

{{ item.name | truncate: 20 : "a" }}
{{ item.name | truncate: 20 : 'a' }}
{{ item.name | truncate: 20 : a }}

我如何使用多个参数(最大字符和可选的尾随字符)来实现这一点?

4

1 回答 1

0

我刚刚测试了你的pipe,这对我来说非常有效:

{{ name | truncate: 20 : 'c' }}

在控制台中我得到:

金额 20

截断字符 c

您的问题可能在其他地方。

于 2016-09-23T13:29:18.117 回答