如何使用材料2设置一周的第一天?
目前默认是星期日即使我将语言环境设置为hu或其他任何东西..
答案 0 :(得分:28)
找到了解决方法:
写这个课
import {NativeDateAdapter} from '@angular/material';
import {Injectable} from '@angular/core';
@Injectable()
export class MyDateAdapter extends NativeDateAdapter {
getFirstDayOfWeek(): number {
return 1;
}
}
然后导入app.module,如:
{provide: DateAdapter, useClass: MyDateAdapter},
答案 1 :(得分:5)
与Béla相当的sam答案,但我必须实现构造函数才能使其正常工作。
import { NativeDateAdapter } from '@angular/material';
import { Injectable } from '@angular/core';
import { Platform } from '@angular/cdk/platform';
@Injectable()
export class SwedishDateAdapter extends NativeDateAdapter {
constructor() {
super('sv-SE', new Platform());
}
getFirstDayOfWeek(): number {
return 1;
}
}
答案 2 :(得分:3)
constructor(
private dateAdapter: DateAdapter<Date>
) { }
ngOnInit() {
this.dateAdapter.setLocale('es');
this.dateAdapter.getFirstDayOfWeek = () => { return 1; }
}
答案 3 :(得分:0)
我目前正在使用角度6和相应版本的材料。
但是,由于我使用了moment.js适配器,因此上述解决方案有效,该应用程序停止正常工作。
使用https://github.com/angular/material2/blob/master/src/material-moment-adapter/adapter/moment-date-adapter.ts处的代码并将其注入到模块中,使应用程序能够检测到正确的区域,并将开始日期设置为星期一(我的日期是pt-pt)。
唯一需要做的更改是设置正确的力矩导入。
答案 4 :(得分:0)
只需将以下内容添加到您的app.module.ts中:
providers: [
{ provide: LOCALE_ID, useValue: 'en-GB' }
],