您好我想根据选择的语言更改日期格式,我使用ng2-translate这是我的工作代码,但它是静态的:
<span> {{product[col.field] | date : 'dd-MM-yyyy' >}} </span>
我想用当前语言制作格式日期,如下所示:
<span> {{product[col.field] | date : 'DATE.PIPE' | translate >}} </span>
在en.json里我有"DATE": { "PIPE": "MM-dd-yyyy"
并且在it.json中我有"DATE": { "PIPE": "dd-MM-yyyy"
可能吗?
或者有没有办法以编程方式更改格式日期?
答案 0 :(得分:2)
只需删除日期管道中的单引号
<span> {{product[col.field] | date : DATE.PIPE | translate >}} </span>
它不起作用的原因是因为单引号使变量名称成为字符串,并尝试将其作为DATE.PIPE格式进行管道处理,但具有此类名称的格式不存在。希望它有意义。
这是一个示例代码
<强> app.component.ts 强>
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
dateFormat = {
date: {
pipe: 'dd-MM-yyyy'
}
};
today = Date.now();
}
<强> app.component.html 强>
<span> {{today | date: dateFormat.date.pipe}} </span>
答案 1 :(得分:2)
您只需将翻译部分放入括号:
{{ product[col.field] | date : ('DATE.PIPE' | translate) }}
如果不这样做,date
管道将'DATE.PIPE'
字符串作为其日期格式。
答案 2 :(得分:0)