gpt4 book ai didi

Angular :limitTo 管道不工作

转载 作者:太空狗 更新时间:2023-10-29 16:54:02 26 4
gpt4 key购买 nike

我正在尝试在 Angular2 的字符串上运行 limitTo 管道:

{{ item.description | limitTo : 20 }} 

我收到以下错误:

The pipe 'limitTo' could not be found

有没有可能这个管道在 Angular2 中被移除了?

这是我的app.module

从'./limit-to.pipe'导入{TruncatePipe};

@NgModule({
imports: [
BrowserModule,
FormsModule,
HttpModule,
InMemoryWebApiModule.forRoot(InMemoryDataService),
RouterModule.forRoot([
{
path: '',
redirectTo: '/home',
pathMatch: 'full'
},
{
path: 'home',
component: GridComponent
},
])
],
declarations: [
AppComponent,
TopNavComponent,
GridComponent,
TruncatePipe
],
providers: [
PinService,
],
bootstrap: [ AppComponent ]
})
export class AppModule { }

我的网格组件正在使用管道:

import { Component,OnInit } from '@angular/core';
import { Router } from '@angular/router';

@Component({
moduleId : module.id,
selector: 'my-grid',
templateUrl : 'grid.component.html',
styleUrls: [ 'grid.component.css']
})

export class GridComponent implements OnInit{


constructor(
private router: Router,
private gridService: GridService) {
}

ngOnInit(): void {
}
}

我的管道定义:

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

@Pipe({
name: 'limitToPipe'
})
export class TruncatePipe implements PipeTransform {

transform(value: string, limit: number) : string {

let trail = '...';

return value.length > limit ? value.substring(0, limit) + trail : value;
}

}

最后是我的模板:

<div *ngFor="let item of items" class="grid-item">
<p class="simple-item-description">
{{ item.description | limitToPipe : 20 }}
</p>
</div>

最佳答案

为了回答您的问题是否已删除:是和否。 limitTo 似乎被删除了,但是有一个 slice 管道,它基本上与 limitTo 相同并且可以用于字符串和列表.它还让您有机会在给定的起始索引处开始您的限制,这很巧妙。

在你的例子中,一个简单的 {{ item.description | slice:0:20 }} 就足够了。除非你想获得更多编写自己的管道的经验,我什至鼓励你这样做 ;)

来源和文档:https://angular.io/docs/ts/latest/api/common/index/SlicePipe-pipe.html

关于 Angular :limitTo 管道不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40028456/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com