export const FormatDate = new InjectionToken('FormatDate');
...
@Component({
selector: '...',
templateUrl: '...',
styleUrls: ['...'],
providers: [{ provide: FormatDate, useValue: 'MM.yyyy' }]
})
export class DatePicker {
@Input() format: string
...
}
我希望根据输入的"格式"参数动态提供"格式日期"。如果format==='short',则使用值:'MM.yyy'ormat==='long'则useValue:'MM.yyyy'。这可能吗?
是的,您可以使用管道来完成。创建一个管道,转换方法应该是这样的(伪代码可能会帮助您创建流(:
exPipe.ts
transform(format: any) {
return format === 'long' ? fetch value form store or anywhere(MM.yyyy)
: fetch value form store or anywhere(MM.yy) || (MM.yyyy).slice(0, 4) // just slice it
}
在模板中,你可以这样做(只是一个例子(:
<div> {{format | exPipe }}</div>