Skip to content

snu.getPx()

转换为 px 数值

将尺寸字符串(支持 pxrpx/upx、百分比,或纯数字)换算为以 px 为单位的数值。百分比基于屏幕宽度计算;rpx/upx 通过系统转换换算为 px。

兼容性

WebAndroid

属性

名称类型必备默认值描述
valueString-尺寸字符串(如 '16px''32rpx''50%'

返回值

类型必备描述
Number换算后的 px 数值

示例

typescript
let px = snu.getPx('32rpx')

snu.addUnit()

为数值补充单位

为数值补充指定单位(默认 px)。若是百分比直接返回;若是纯数字/数字字符串则补单位;若是 rpx/upx 则将数值取出后改补指定单位;其余情况原样返回。

兼容性

WebAndroid

属性

名称类型必备默认值描述
valueany-待处理的值
unitString'px'单位后缀

返回值

类型必备描述
String补充单位后的字符串

示例

typescript
let s = snu.addUnit(16)      // '16px'
let p = snu.addUnit(16, 'rpx') // '16rpx'

snu.getInnerRadius()

计算内层建议圆角

根据外层宽、外层圆角与内层宽计算内层元素的建议圆角值,用于"外圆角内缩"的嵌套元素圆角计算。

兼容性

WebAndroid

属性

名称类型必备默认值描述
outwidthNumber-外层宽度
outradiusNumber-外层圆角
innerwidthNumber-内层宽度

返回值

类型必备描述
Number内层元素建议圆角值

示例

typescript
let r = snu.getInnerRadius(100, 12, 80)

snu.getDistance()

计算两点距离

计算两个触摸点(坐标)之间的直线距离。

兼容性

WebAndroid

属性

名称类型必备默认值描述
touch1XNumber-点 1 横坐标
touch1YNumber-点 1 纵坐标
touch2XNumber-点 2 横坐标
touch2YNumber-点 2 纵坐标

返回值

类型必备描述
Number两点间欧氏距离

示例

typescript
let d = snu.getDistance(0, 0, 3, 4) // 5

snu.getRotateAngle()

计算两点连线旋转角度

计算两点连线相对水平方向的旋转角度(单位:度,返回范围为 -180°~180°)。

兼容性

WebAndroid

属性

名称类型必备默认值描述
touch1XNumber-点 1 横坐标
touch1YNumber-点 1 纵坐标
touch2XNumber-点 2 横坐标
touch2YNumber-点 2 纵坐标

返回值

类型必备描述
Number连线相对水平方向的角度(度)

示例

typescript
let angle = snu.getRotateAngle(0, 0, 10, 10) // 45

snu.findParent()

向上查找父组件

从当前组件实例向上遍历父组件链,查找名称匹配 parentNames(任一)的最近父组件;找到返回该实例,否则返回 null

兼容性

WebAndroid

属性

名称类型必备默认值描述
instanceComponentPublicInstance-当前组件实例
parentNamesString[]-目标父组件名称列表(任一命中)

返回值

类型必备描述
ComponentPublicInstance/null命中的父组件实例;未找到为 null

示例

typescript
let parent = snu.findParent(getCurrentInstance().proxy as any, ['sn-cell'])

snu.findBrother()

查找兄弟组件

从当前组件实例的父组件的子组件中,查找名称匹配 brotherNames(任一)且非自身的兄弟组件;找到返回该实例,否则返回 null

兼容性

WebAndroid

属性

名称类型必备默认值描述
instanceComponentPublicInstance-当前组件实例
brotherNamesString[]-目标兄弟组件名称列表(任一命中)

返回值

类型必备描述
ComponentPublicInstance/null命中的兄弟组件实例;未找到为 null

示例

typescript
let bro = snu.findBrother(instance, ['sn-icon'])

snu.showToast()

显示轻提示

根据配置信息显示全局轻提示,可在任意位置调用,无需放置组件(底层由 sn-e-toast 原生插件支撑,弹出与消失均带渐隐 + 缩放动画)。如需自由定制内容与样式的轻提示,请使用 sn-toast 组件configSnShowToastConfig 配置对象。

兼容性

WebAndroid

属性

名称类型必备默认值描述
configSnShowToastConfig-Toast 配置对象

snu.showToast 的配置。texttitle 兼容(仅有 title 时当 text 用,两者并存忽略 title)。

字段类型必备描述
textString提示文本
titleString兼容 uni.showToast 写法:仅有 title 时当作 text 使用;texttitle 同时存在时忽略 title
bgColorString背景色(默认 $snui.colors.toast
positionString'top' | 'center' | 'bottom',默认 center
durationNumber显示时长(ms),默认 2000
textSizeString提示文本字号,默认 $14
textColorString提示文本颜色,默认 '#fff'
borderRadiusString轻提示圆角,默认 $12
paddingString内边距,默认 '$12px $15px'(支持多段写法)
iconString提示图标名(success / error / info / warning 等标准值)
iconSizeString图标字号,默认 $20
iconColorString图标颜色,默认 '#fff'
textAlignString文本对齐方式
loadingBoolean是否显示加载图标(优先生效于 icon)
textLinesNumber文本最大行数,超出省略;默认 0 不限制
passThroughBoolean是否穿透点击,默认 true
customStyleUTSJSONObject自定义样式
success() => void成功回调(同步触发)
fail(error: UniError) => void失败回调
complete(res: any | null) => void完成回调

返回值

类型必备描述
Void无返回值

示例

typescript
snu.showToast({ text: '保存成功', icon: 'success' })

snu.showToast({
	text: '加载中...',
	loading: true,
	duration: 3000
})

snu.showToast({ text: '在顶部显示', position: 'top' })

snu.hideToast()

隐藏轻提示

立即关闭当前显示的轻提示(对 snu.showToast 显示的内容生效)。

兼容性

WebAndroid

属性

返回值

类型必备描述
Void无返回值

示例

typescript
snu.hideToast()

snu.showModal()

显示 Modal 弹窗

打开一个 Modal 弹窗(经 dialogPage 弹出),并返回该弹窗的唯一 ID。configSnShowModalConfig 配置对象。

完整字段见 API 类型文档 SnShowModalConfig

兼容性

WebAndroid

属性

名称类型必备默认值描述
configSnShowModalConfig-Modal 配置对象

snu.showModal 的配置。

字段类型必备描述
titleString标题文本
titleAlignString标题对齐方式
titleSizeString标题字号
titleFontString标题字体
titleColorString标题颜色
contentString内容文本
contentAlignString内容对齐方式
contentSizeString内容字号
contentColorString内容颜色
contentFontString内容字体
bgColorString弹窗背景色
borderRadiusString弹窗圆角
buttonTypeString'embed'(嵌入式)| 'float'(浮动式)
buttonBorderString按钮边框样式
confirmTextString确定按钮文字
confirmTextColorString确定按钮文字颜色
confirmTextSizeString确定按钮文字字号
showCancelBoolean是否显示取消按钮
showConfirmBoolean是否显示确定按钮
cancelTextString取消按钮文字
cancelTextColorString取消按钮文字颜色
cancelTextSizeString取消按钮文字字号
positionString'center' | 'top' | 'bottom' | 'left' | 'right'
aniTimeString | Number动画时长
maskCloseBoolean点击遮罩关闭
maskOpacityNumber遮罩透明度
disabledBoolean禁用弹窗交互
preventBackBoolean阻止返回键关闭
openAnimationSnModalAnimationFn自定义打开动画
closeAnimationSnModalAnimationFn自定义关闭动画
customStyleUTSJSONObject自定义样式
success(confirm: boolean, cancel: boolean) => void成功回调,可区分点击确定/取消/遮罩关闭
fail(error: UniError) => void失败回调
complete(res: any | null) => void完成回调

自定义弹窗开合动画函数,接收遮罩元素、内容元素与动画时长。

参数类型说明
maskUniElement | null遮罩元素
contentUniElement | null内容元素
durationnumber动画时长(ms)
返回值void-

来自 @/uni_modules/sinle-api,经 sinle-ui 重导出。

返回值

类型必备描述
String本次弹窗的唯一 ID

示例

typescript
snu.showModal({
	title: '提示',
	content: '确定删除吗?',
	success: (confirm, cancel) => {}
})

snu.showActionsheet()

显示操作菜单

打开一个操作菜单(ActionSheet)弹窗(经 dialogPage 弹出),并返回该菜单的唯一 ID。configSnShowActionsheetConfig 配置对象。

完整字段见 API 类型文档 SnShowActionsheetConfig

兼容性

WebAndroid

属性

名称类型必备默认值描述
configSnShowActionsheetConfig-操作菜单配置对象

snu.showActionsheet 的配置。除与模态框类似的常用字段外:

字段类型必备描述
actionsArray<SnDataItem>操作项列表
titleString标题文本
titleColorString标题颜色
titleSizeString标题字号
showCancelBoolean是否显示取消项
cancelTextString取消项文案
bgColorString面板背景色
borderRadiusString面板圆角
maskOpacityNumber遮罩透明度
itemTextSizeString操作项字号
itemPaddingString操作项内边距
aniTimeString | Number动画时长
preventBackBoolean阻止返回键关闭
disabledBoolean禁用操作菜单
maskCloseBoolean点击遮罩关闭
wrapStyleUTSJSONObject队列容器样式
wrapClassString队列容器外部样式类
panelStyleUTSJSONObject面板样式
panelClassString面板外部样式类
itemStyleUTSJSONObject操作项样式(复用 sn-cell 样式链,透传 cell customStyle)
itemBorderBoolean操作项是否显示分隔线(透传 cell border)
itemHoverStyleUTSJSONObject操作项点击态样式(透传 cell hoverStyle)
openAnimationSnModalAnimationFn自定义打开动画
closeAnimationSnModalAnimationFn自定义关闭动画
success(tapIndex: number) => void成功回调,返回点击的操作项索引
fail(error: UniError) => void失败回调
complete(res: any | null) => void完成回调

通用数据项类型,全局弹窗操作菜单与多数列表类组件共用(组件侧详见组件类型)。

字段类型必备描述
idString项 id
textString显示文本
iconString图标名
valueString关联值
colorString文本颜色
disabledBoolean是否禁用

返回值

类型必备描述
String本次菜单的唯一 ID

示例

typescript
snu.showActionsheet({
	title: '请选择',
	actions: [{ text: '拍照' }, { text: '相册' }],
	success: (tapIndex) => {}
})

snu.showLoading()

显示 Loading

打开一个 Loading 加载弹窗(经 dialogPage 弹出),并返回该 Loading 的唯一 ID。配合 hideLoading() 关闭。configSnShowLoadingConfig 配置对象。

完整字段见 API 类型文档 SnShowLoadingConfig

兼容性

WebAndroid

属性

名称类型必备默认值描述
configSnShowLoadingConfig-Loading 配置对象

snu.showLoading 的配置。

字段类型必备描述
textString提示文本
overlayBoolean是否显示遮罩
maskOpacityNumber遮罩透明度
shadowBoolean是否显示阴影
aniTimeString动画时长
iconColorString图标颜色
iconSizeString图标字号
textColorString文本颜色
textSizeString文本字号
bgColorString背景色
borderRadiusString圆角
paddingString内边距
preventBackBoolean阻止返回
customStyleUTSJSONObject自定义样式
success() => void成功回调
fail(error: UniError) => void失败回调
complete(res: any | null) => void完成回调

返回值

类型必备描述
String本次 Loading 的唯一 ID

示例

typescript
snu.showLoading({ text: '加载中...' })

snu.hideLoading()

隐藏 Loading

关闭当前显示的 Loading 弹窗。

兼容性

WebAndroid

属性

返回值

类型必备描述
Void无返回值

示例

typescript
snu.hideLoading()

使用 MIT 协议