plugins.js 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. export function timeStamp(StatusMinute, userCardType, nextSendTime) {
  2. var day = parseInt(StatusMinute / 60 / 24);
  3. var hour = parseInt((StatusMinute / 60) % 24);
  4. var min = parseInt(StatusMinute % 60);
  5. StatusMinute = '';
  6. if (day > 0) {
  7. StatusMinute = day + '天';
  8. }
  9. if (hour > 0) {
  10. StatusMinute += hour + '小时';
  11. }
  12. if (day === 0 && min > 0) {
  13. StatusMinute += parseFloat(min) + '分钟';
  14. }
  15. return StatusMinute.length ? StatusMinute : userCardType === 1 ? '0小时' : '';
  16. }
  17. // 封装对剪贴板的访问为异步函数
  18. export function writeToClipboard(text) {
  19. // 如果navigator.clipboard存在,直接使用复制功能
  20. if (navigator.clipboard) {
  21. try {
  22. setTimeout(() => {
  23. navigator.clipboard.writeText(text).then(() => {
  24. alert(1)
  25. return Promise.resolve()
  26. }).catch((err) => {
  27. alert(2)
  28. return Promise.reject(err)
  29. });
  30. }, 0);
  31. } catch (err) {
  32. return Promise.reject(err)
  33. }
  34. } else {
  35. // 否则使用传统的document.execCommand('copy')方法
  36. const textArea = document.createElement('textarea');
  37. textArea.value = text;
  38. document.body.appendChild(textArea);
  39. textArea.select();
  40. try {
  41. const successful = document.execCommand('copy');
  42. if (successful) {
  43. return Promise.resolve()
  44. } else {
  45. throw '复制失败'
  46. }
  47. } catch (err) {
  48. return Promise.reject(err)
  49. }
  50. document.body.removeChild(textArea);
  51. }
  52. }