Moment.js first day of the week incorrect
我是第一次使用Moment.js。我尝试检索一周中第一天的日期,而在欧洲,通常是星期一。无论做什么,我都会在一周的第一天得到星期日。
我试图设置不同的语言(本地或全局),但无济于事。我使用moment.js github页面中的langs.min.js文件。语言文件" en-gb"和" fr"具有以下代码行:
1 | dow : 1, // Monday is the first day of the week. |
因此,当我要求每周的第一天时,我会得到星期一的日期吗?我一直得到星期日作为输出。
1 2 3 4 5 6 7 8 9 10 11 | // Create moment object var localLang = moment(); // Set language to french localLang.lang('fr'); // Test language localLang.lang(); // Output: fr // Retrieve first day of the week and format it var dow = localLang.startOf('week').format('dddd DD-MM-YYYY'); // Output: dimanche 14-04-2013 |
Dimanche是星期天的法语。如您所见,moment.js可以成功使用语言文件,但不使用星期几配置
JSfiddle用moment.js和langs.js进行测试:
JSFiddle
编辑:
我可以用
对于最近遇到此问题的任何人,现在都支持
将第一周设置为星期一:
1 2 3 4 5 6 7 | moment.lang('zh-cn', { week : { dow : 1 // Monday is the first day of the week } }); var date = moment().weekday(0); // date now is the first day of the week, (i.e., Monday) |
我们正在努力添加可识别语言环境的工作日,但尚未完成。
https://github.com/timrwood/moment/issues/613#issuecomment-13786429
我设法使其工作。 我用下面的代码:
1 2 3 4 5 6 7 8 9 10 | $(#id_Of_Element).daterangepicker({ weekStart: 2, locale: { customRangeLabel: 'Custom Range', daysOfWeek: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], firstDay: 1 } }); |