index.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. // 获取元素宽高
  2. export const getRect = ({ name, onSuccess, instance, multiple }) => {
  3. // 创建一个选择器查询对象
  4. const select = uni.createSelectorQuery().in(instance.proxy);
  5. // 选择指定元素,并获取其矩形信息
  6. select
  7. .select(name)
  8. .boundingClientRect((rect) => {
  9. // 如果rect是一个数组,则返回
  10. if (!rect) return;
  11. if (Array.isArray(rect)) return multiple ? rect : rect[0];
  12. // 如果onSuccess存在,则调用onSuccess函数,并传入rect的高度
  13. onSuccess?.(rect);
  14. })
  15. .exec();
  16. };
  17. //- 小写数字转换成大写, 只处理到[0 ~ 99]
  18. export const numberConvertToUppercase = (num) => {
  19. num = Number(num);
  20. const upperCaseNumber = [
  21. "零",
  22. "一",
  23. "二",
  24. "三",
  25. "四",
  26. "五",
  27. "六",
  28. "七",
  29. "八",
  30. "九",
  31. "十",
  32. "百",
  33. "千",
  34. "万",
  35. "亿",
  36. ];
  37. let length = String(num).length;
  38. if (length == 1) {
  39. return upperCaseNumber[num];
  40. } else if (length == 2) {
  41. if (num == 10) {
  42. return upperCaseNumber[num];
  43. } else if (num > 10 && num < 20) {
  44. return "十" + upperCaseNumber[String(num).charAt(1)];
  45. } else {
  46. return (
  47. upperCaseNumber[String(num).charAt(0)] +
  48. "十" +
  49. upperCaseNumber[String(num).charAt(1)].replace("零", "")
  50. );
  51. }
  52. }
  53. };