utils.js 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. //格式化日期
  2. export function getDate(type) {
  3. const date = new Date();
  4. let year = date.getFullYear();
  5. let month = date.getMonth() + 1;
  6. let day = date.getDate();
  7. if (type === 'end') {
  8. day = day + 1;
  9. }
  10. month = month > 9 ? month : '0' + month;
  11. day = day > 9 ? day : '0' + day;
  12. return `${year}-${month}-${day}`;
  13. }
  14. export function stopScroll(){
  15. var box=function(e)
  16. {passive: false ;};
  17. document.body.style.overflow='hidden';
  18. document.addEventListener("touchmove",box,false);
  19. }
  20. export function startScroll(){
  21. var box=function(e){passive: false };
  22. document.body.style.overflow='';//出现滚动条
  23. document.removeEventListener("touchmove",box,false);
  24. }
  25. // 生成随机数
  26. export const getRuleNo = (suffix = 'R') => {
  27. const randomNum = Math.floor(Math.random() * 1000000)
  28. return `${suffix}${parseTime(new Date(), '{y}{m}{d}')}${randomNum}`
  29. }
  30. export function parseTime (time, cFormat) {
  31. if (arguments.length === 0 || !time) {
  32. return null
  33. }
  34. const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'
  35. let date
  36. if (typeof time === 'object') {
  37. date = time
  38. } else {
  39. if (typeof time === 'string') {
  40. if (/^[0-9]+$/.test(time)) {
  41. // support "1548221490638"
  42. time = parseInt(time)
  43. } else {
  44. // support safari
  45. // https://stackoverflow.com/questions/4310953/invalid-date-in-safari
  46. time = time.replace(new RegExp(/-/gm), '/')
  47. }
  48. }
  49. if (typeof time === 'number' && time.toString().length === 10) {
  50. time = time * 1000
  51. }
  52. date = new Date(time)
  53. }
  54. const formatObj = {
  55. y: date.getFullYear(),
  56. m: date.getMonth() + 1,
  57. d: date.getDate(),
  58. h: date.getHours(),
  59. i: date.getMinutes(),
  60. s: date.getSeconds(),
  61. a: date.getDay()
  62. }
  63. const time_str = format.replace(/{([ymdhisa])+}/g, (result, key) => {
  64. const value = formatObj[key]
  65. // Note: getDay() returns 0 on Sunday
  66. if (key === 'a') {
  67. return ['日', '一', '二', '三', '四', '五', '六'][value]
  68. }
  69. return value.toString().padStart(2, '0')
  70. })
  71. return time_str
  72. }