calendar.wxs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. function getDateLabel(monthItem, dateItem) {
  2. var weekdayText = ['日', '一', '二', '三', '四', '五', '六'];
  3. var weekday = (monthItem.weekdayOfFirstDay + dateItem.day - 1) % 7;
  4. var label = monthItem.month + 1 + '月' + dateItem.day + '日, 星期' + weekdayText[weekday];
  5. if (dateItem.type === 'start') {
  6. label = '开始日期:' + label;
  7. }
  8. if (dateItem.type === 'end') {
  9. label = '结束日期:' + label;
  10. }
  11. if (isDateSelected(dateItem)) {
  12. label = '已选中, ' + label;
  13. }
  14. if (dateItem.prefix) {
  15. label += ', ' + dateItem.prefix;
  16. }
  17. if (dateItem.suffix) {
  18. label += ', ' + dateItem.suffix;
  19. }
  20. return label;
  21. }
  22. function isDateSelected(dateItem) {
  23. return ['start', 'end', 'selected', 'centre'].indexOf(dateItem.type) >= 0;
  24. }
  25. function getMonthTitle(year, month, pattern = '') {
  26. // prettier-ignore
  27. var REGEXP = getRegExp('\{year\}|\{month\}', 'g');
  28. return pattern.replace(REGEXP, function (match) {
  29. var replacements = {
  30. '{year}': year,
  31. '{month}': month < 10 ? '0' + month : month,
  32. };
  33. return replacements[match] || match;
  34. });
  35. }
  36. module.exports = {
  37. getDateLabel: getDateLabel,
  38. isDateSelected: isDateSelected,
  39. getMonthTitle: getMonthTitle,
  40. };