单应用项目,可以创建很多独立工具类页面 ,不用登录 初始化的页面
zhangchen
2025-08-29 e992737f7ad69192ff386505ec588c45e9965023
src/utils/utils.ts
@@ -1,3 +1,5 @@
import pinyin from 'pinyin';
/**
 * 计算某个类名元素的可用高度(视口高度 - 元素顶部距离)
 * @param className 元素类名(不带.)
@@ -49,3 +51,30 @@
  }
  return result;
}
/**
 * 姓名脱敏:第二个字变成首字母大写
 * @param name 患者姓名
 * @returns 脱敏后的姓名
 */
export function maskName(name: string): string {
  if (!name) return ''
  const chars = Array.from(name)
  if (chars.length < 2) return name
  const secondChar = chars[1]
  const [pinyinArr] = pinyin(secondChar, { style: pinyin.STYLE_FIRST_LETTER })
  const masked = pinyinArr[0]?.toUpperCase?.() || '*'
  chars[1] = masked
  return chars.join('')
}
/**
 * 延时函数
 * @param {number} ms - 延时时间,单位毫秒
 */
export function delay(ms: number) {
  return new Promise((resolve) => setTimeout(resolve, ms));
}