分享好友 最新动态首页 最新动态分类 切换频道
hbxw-utils
2024-12-26 20:44

修复插件小问题

hbxw-utils

优化一些方法

增加本地存储方法

查看更多
Vue2 Vue3 √ √
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序 HBuilderX 3.1.0 × √ × × × √
钉钉小程序 快手小程序 飞书小程序 京东小程序 × × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari √ √ √ √ × × × × ×

开发中常用工具方法封装,如节点获取/高精度计算/类型判断/日期格式化/节流防抖等,提高开发效率,避免无效的造轮子,其中部分方法摘自uview

节点获取篇

方法名 功能 返回 selector uniapp中因为没有domapi,如果想单个获取元素尺寸位置信息可以使用此方法 返回一个节点信息,文挡 selectorAll uniapp中因为没有domapi,如果想批量获取元素尺寸位置信息可以使用此方法 批量返回数组节点信息,文挡

系统信息篇

方法名 功能 返回 getStatusBarHeight 获取状栏栏高度 返回状态栏高度,单位px getTitleBarHeight 获取titleBar的高度 返回当前标题栏的高度,单位px getHeaderBarHeight 获取顶部header的高度,也就是状态栏高度+标题栏的高度 返回顶部header高度 getWindowInfo 获取当前窗口相关的信息 返回当前窗口信息{screenWidth,screenHeight,windowWidth,windowHeight,windowTop,windowBottom},文挡 getSystemInfo 获取当前设备信息 返回当前设备信息,文挡 systemInfo 上面所有方法的整体导出 如要不想一个一个方法的导出,可以直接导入它,再通过.调用上面方法,如systemInfo.getStatusBarHeight()

精度计算篇

方法名 功能 返回 times 高精度乘法 返回计算结果,解决js在计算过程的精度问题,如0.1*0.2 plus 高精度加法 返回计算结果,解决js在计算过程的精度问题,如0.1+0.2 minus 高精度减法 返回计算结果,解决js在计算过程的精度问题,如0.3-0.1 divide 高精度除法 返回计算结果,解决js在计算过程的精度问题,如0.3/0.1 round 高精度四舍五入 返回计算结果,解决js在计算过程的精度问题 numToMillennials 数字转千分位表示,支持设置保留小数位数 返回转换结果,如123456转化为123,456.00 digitUppercase 数字转大写金额 返回转换结果,如123456.56转化为壹拾贰万叁仟肆佰伍拾陆元伍角陆分 mathApi 上面所有方法的整体导出 如要不想一个一个方法的导出,可以直接导入它,再通过.调用上面方法,如mathApi.times(0.1,0.2)

类型判断

方法名 功能 返回 isEmail 验证电子邮箱格式 返回true/false isMobile 验证手机格式 返回true/false isUrl 验证URL格式 返回true/false isDate 验证日期格式 返回true/false isDateISO 验证ISO类型的日期格式 返回true/false isNumber 验证十进制数字 返回true/false isString 验证字符串 返回true/false isDigits 验证整数 返回true/false isIdCard 验证身份证号码 返回true/false isCarNo 是否车牌号 返回true/false isAmount 金额,只允许2位小数 返回true/false isChinese 中文 返回true/false isLetter 只能输入字母 返回true/false isEnOrNum 只能是字母或者数字 返回true/false isContains 验证是否包含某个值 返回true/false isRange 验证一个值范围[min, max] 返回true/false isRangeLength 验证一个长度范围[min, max] 返回true/false isLandline 是否固定电话 返回true/false isEmpty 判断是否为空 返回true/false isJsonString 是否json字符串 返回true/false isArray 是否数组 返回true/false isObject 是否对象 返回true/false isCode 是否短信验证码 返回true/false isFunc 是否函数方法 返回true/false isPromise 是否promise对象 返回true/false isImage 是否图片格式 返回true/false isVideo 是否视频格式 返回true/false isRegExp 是否为正则对象 返回true/false testApi 上面所有方法的集合 返回true/false

日期格式化篇

方法名 功能 说明 timeFormat 格式化时间 时间戳或者时间字符串转换为指定的格式,格式规则为yyyy:mm:dd/yyyy:mm/yyyy年mm月dd日/yyyy年mm月dd日 hh时MM分等,可自定义组合 默认yyyy-mm-dd timeFormatToLong 格式化时间 时间戳或者时间字符串转换为多久前,如果是5分钟内则返回刚刚,超过依次返回多少分钟/小时/天/月/年,第二个参数如果传时间格式,当时间间隔超过月的时候会返回指定格式的时间 countDownByStartEnd 倒计时 传入结束时间和开始时间,获取一个天时分秒毫秒对象{days,hours, minutes,seconds, milliseconds} countDownBytimeStamp 倒计时 传入一个时间戳,获取一个天时分秒毫秒对象{days,hours, minutes,seconds, milliseconds} countDownHMSMBytimeStamp 倒计时 传入一个时间戳,获取一个时分秒毫秒对象{hours, minutes,seconds, milliseconds}

性能优化篇

方法名 功能 说明 debounce 防抖方法 一定时间内,只有最后一次操作,再过wait毫秒后才执行函数 throttle 节流方法 在一定时间内,只能触发一次

本地存储方法封装

方法名 功能 说明 storage 对象的形式支持设置过期时间的设置本地存储方法 使用前阅读下代码,查看其下可用api LocalStorage 类的形式支持设置过期时间的设置本地存储方法 使用前阅读下代码,查看其下可用api

通用方法篇

方法名 功能 说明 numberFormat 数字格式化 把数字转换成千分位形式,返回转换后内容 trim 去除空格 去除字符串的空格,支持both(左右)/left/right/all 默认both,返回处理后的字符串 randomArray 打乱数组 随机打乱数组,返回打乱后的数组 flattenArray 数组扁平化 把多维数组转化为一维数组,返回一维数组,如[1,[2,[3],4,[5,[6]]]]转化为[1,2,3,4,5,6] shuffleArray 洗牌算法,随机排列数组元素 数组随机排序 [ 1, 2,3,4, -1, 0 ] => [3, 1, 0, 2, 4, -1] deepClone 深度克隆 返回克隆后的对象或者原值(不是对象) deepMerge 对象深度合并 深度合并后的对象或者false(入参有不是对象) transformStyle 样式转换 对象转字符串,或者字符串转对象 getPx 用于获取用户传递值的px值 如果用户传递了"xxpx"或者"xxrpx",取出其数值部分,如果是"xxxrpx"还需要用过uni.upx2px进行转换 random 取一个区间数 返回指区间内的一个随机值 telSecurity 手机号脱敏,支持传递脱敏位数 对手机号执行星号脱敏如转化为156****9862 urlParamToJson url参数转对象 url参数字符串转对象 a=1&b=2转为 {a:1,b:2} jsonToUrlParam JSON对象转换为URL参数 json对象转url字符串 {a:1,b:2}转为a=1&b=2 isEmojiCharacter 判断字符串是否有emoji表情 返回true/false typeOf 获取变量的类型 typeOf('') string typeOf(0) number typeOf() undefined typeOf(null) null typeOf({}) object typeOf([]) array typeOf(0) number typeOf(() => {}) function safeJSONParse trycatch安全处理JSON.parse trycatch包裹的JSON.parse,错误返回null

请求方法封装 Request

绝大部分项目都要用到请求方法,基于uni.request封装了使用更方便的请求方法

请求方法特性:

  1. 支持baseUrl设置,如果传的接口本身就是http开头就会跳过baseUrl的添加
  2. 支持请求拦截,拦截方法可以添加多个,有一个拦截返回true则请求中断
  3. 支持响应拦截,拦截方法可以添加多个,有一个拦截返回true则请求中断
  4. 支持请求中断,发起的请求返回Promise上默认都会带上cancel方法,调用它会中断当前请求

请求方法使用示例:


推荐单起一个文件管理接口api,登录相关的接口示例代码如下:


更多有用方法持续更新中。。。,如果你有想要的方法欢迎留言

最新文章
追漫app推荐 追漫app软件哪个更好用
现在漫画作品称为很多年轻青年进行日常消遣的一个重要模式选择,很多用户们都喜欢自己在手机上下载超多免费的漫画作品,然后自己找到一个安静的场所进行观看,所以今天小编给大家带来追漫app推荐,为大家分享情况好用的能够在手机上实现漫
最新排气扇价格 十大排气扇品牌排名
排气扇、换气扇,不仅能保证除去室内污浊的空气,而且还能源源不断的吸入室外新鲜的空气,达到通风透气、降温的效果。所以说,购买到好品质的排气扇,对于室内空气的流通是非常重要的。下面小编就给大家介绍一下十大排气扇品牌排名及最新排
有点厉害但不吓人:带黑科技的荣耀Play手机使用体验
运气不错获得了这次荣耀Play的众测机会,本人也是游戏爱好者,看了Play的发布会后,对“很吓人的技术”表示有兴趣,很想体验一下Play的游戏功能,专业评测数据很多科技网站都有了,我会从个人的角度习惯主要针对游戏体验和AI拍照方面来体验
战士带彻地钉的手游传奇
传奇游戏一直以来都以其开放的世界和多样的职业系统而受到玩家的喜爱。在这类游戏中,玩家不仅可以选择不同的职业,还能通过不断的打怪升级,提升自己的角色属性。特别是在战士带彻地钉的手游传奇中,战士这一职业尤为突出,凭借其强大的输
请问在百度上推广产品需要多少钱?
~您好,有下面的标准供您参考。百度发布广告收费标准:1.竞价排名推广费最低预付金为1500元,多付不限,您的付款将会被存入您所注册的竞价排名账号中,当有潜在客户通过竞价排名点击访问你的网站后,百度会从你的账号中扣除相应费用。2.每次
这三大热点,拉升!
【导读】AI应用方向快速拉升,冰雪旅游概念股表现活跃中国基金报记者 李智一起来看下上午的市场情况及资讯。AI应用方向走高表示,豆包大模型来源于字节跳动2023年研发的“云雀”大模型,是国内首批通过算法备案的大模型之一。2024年5月15日
手机直播如何使用虚拟人物进行创意展示和互动
随着直播行业的不断发展,越来越多的直播内容需要与观众互动并展现更多创意。虚拟人物在手机直播中的应用成为了一种新趋势,这不仅能为主播提供更多表现空间,还能够吸引更多观众的注意力。那么,如何在手机直播中弄虚拟人物呢?这篇文章将
格林巴利综合症双腿麻木无力不能站起来
格林-巴利综合症是一种急性炎症性周围神经病,常导致双腿麻木无力,甚至无法站立。这种病症通常与感染因素或自身免疫性疾病有关。感染可能包括流感病毒、巨细胞病毒等,而自身免疫性疾病如系统性红斑狼疮也可能是诱因。患者通常会经历四肢
用AI绘画神器轻松生成唯美美女写真,超详细评测与实用教程
Artbreeder:这是一款注重用户互动与创造的AI工具,用户可以通过混合不同风格的头像生成独特的美女形象。优点在于可以快速调整图像参数,非常适合喜欢尝试不同风格的用户,但其生成结果可能略显不够精致。DeepArt:如果你想要在美女写真中
狐妖小红娘这些场景惨遭“和谐”,看漫画就知道,粉丝都不敢看
狐妖小红娘这些经典场景惨遭“和谐”,看漫画原作就知道,粉丝都不敢看喜欢看动漫的小伙伴们肯定都知道在动漫世界当中,也是有着许多让人印象深刻的存在,而这样的状况也是让许多人都看到了漫画世界当中的一些奇妙的情况,而在这样的状况之
相关文章
推荐文章
发表评论
0评