更新记录
1.0.0(2023-01-18)
下载此版本
Y-NavBar 自定义顶部导航
介绍
自定义导航,左侧按钮自定义事件,左中右插槽,支持多平台,app端已做兼容statusBar,左侧返回按钮可选择插槽模式或自定义事件,默认事件与type连用控制返回方式。支持样式自定义,可传入样式自定义各种样式。
(已兼容微信小程序右侧胶囊按钮,距离已算好)
参数说明
参数名称 |
说明 |
是否必填 |
数据类型 |
默认 |
bgColor |
背景颜色,支持rgba,渐变,背景图等等 |
否 |
String |
#f5f5f5 |
styleList |
基本样式自定义,例如{fontSize:"24rpx"} |
否 |
Object |
|
commonStyle |
外层盒子自定义样式,一般用于加边框或阴影,例如{borderBottom:"2rpx solid #333"} |
否 |
Object |
|
slotEable |
是否开启全部插槽模式,去掉所有默认容器 |
否 |
Boolean |
false |
leftSlot |
左侧返回自定义插槽,传入插槽名称即可 |
否 |
String |
|
centerSlot |
中间自定义插槽,传入插槽名称即可 |
否 |
String |
|
rightSlot |
右侧自定义插槽,传入插槽名称即可 |
否 |
String |
|
color |
标题颜色 |
否 |
String |
#333333 |
titleSize |
标题字体大小,参数同font-size参数相同,不需要带单位,单位默认为rpx |
否 |
String | Number |
32 |
title |
标题内容 |
否 |
String |
|
titleWeight |
标题的weight,参数值同font-weight |
否 |
String|Number |
bold |
type |
左上角返回按钮类型,默认为back,返回上一级,to为自定义跳转,lunch执行uni.reLaunch,redirect为重定向跳转,执行uni.redirectTo,当参数值为tab,to,lunch,redirect时需要传入参数url_l为跳转路由地址,参数为tab时,执行uni.switchTab,当参数值为custom时开启执行自定义事件back |
否 |
String |
back |
url_l |
当type参数值为to,lunch,redirect必传,为跳转路由地址 |
否 |
String |
|
imgPath |
左上角自定义icon,需要自定义可传入图片本地地址或线上地址 |
否 |
String |
|
leftType |
左上角返回icon图标,有三种,normal,bend,round,如果不满足需要可以传imgPath自定义图片或使用左侧自定义插槽leftSlot |
否 |
String |
normal |
leftSize |
左侧返回图标大小,当左侧使用默认三种图标时可以改变图标大小,不需要传单位 |
否 |
Number|String |
48 |
leftIconColor |
左侧返回图标颜色,当左侧使用默认三种图标时可以改变图标颜色 |
否 |
String |
#333 |
leftIconWeight |
左侧返回图标weight,当左侧使用默认三种图标时可以改变图标weight,改变线条的粗细 |
否 |
String |
bold |
leftDistance |
不使用中间插槽时可以控制标题距左侧距离 ,默认50%居中 |
否 |
String |
50% |
自定义事件
事件名称 |
说明 |
返回参数 |
@back |
当左上角图标leftType为默认三种类型,type为custom时,点击左上角图标触发自定义事件back |
无 |
示例
默认示例
<ZH-NavBar
:title="title"
>
</ZH-NavBar>
<script>
export default{
data(){
return{
title:"更多主题"
}
}
}
</script>
右上角插槽示例
<ZH-NavBar
:title="title"
>
<template #right>
<uni-icons @tap.stop="clickItem" type="contact" size="30"></uni-icons> //自定义部分,只是效果展示
</template>
</ZH-NavBar>
<script>
export default{
data(){
return{
title:"更多主题"
}
},
methods:{
//点击事件
clickItem(){
}
}
}
</script>
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
app-vue |
× |
√ |
× |
× |
× |
× |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
× |
× |
× |
× |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
√ |
√ |
√ |
√ |
√ |
× |
√ |
√ |
√ |
Y-NavBar 自定义顶部导航
介绍
自定义导航,左侧按钮自定义事件,左中右插槽,支持多平台,app端已做兼容statusBar,左侧返回按钮可选择插槽模式或自定义事件,默认事件与type连用控制返回方式。支持样式自定义,可传入样式自定义各种样式。
(已兼容微信小程序右侧胶囊按钮,距离已算好)
参数说明
参数名称 |
说明 |
是否必填 |
数据类型 |
默认 |
bgColor |
背景颜色,支持rgba,渐变,背景图等等 |
否 |
String |
#f5f5f5 |
styleList |
基本样式自定义,例如{fontSize:"24rpx"} |
否 |
Object |
|
commonStyle |
外层盒子自定义样式,一般用于加边框或阴影,例如{borderBottom:"2rpx solid #333"} |
否 |
Object |
|
slotEable |
是否开启全部插槽模式,去掉所有默认容器 |
否 |
Boolean |
false |
leftSlot |
左侧返回自定义插槽,传入插槽名称即可 |
否 |
String |
|
centerSlot |
中间自定义插槽,传入插槽名称即可 |
否 |
String |
|
rightSlot |
右侧自定义插槽,传入插槽名称即可 |
否 |
String |
|
color |
标题颜色 |
否 |
String |
#333333 |
titleSize |
标题字体大小,参数同font-size参数相同,不需要带单位,单位默认为rpx |
否 |
String | Number |
32 |
title |
标题内容 |
否 |
String |
|
titleWeight |
标题的weight,参数值同font-weight |
否 |
String|Number |
bold |
type |
左上角返回按钮类型,默认为back,返回上一级,to为自定义跳转,lunch执行uni.reLaunch,redirect为重定向跳转,执行uni.redirectTo,当参数值为tab,to,lunch,redirect时需要传入参数url_l为跳转路由地址,参数为tab时,执行uni.switchTab,当参数值为custom时开启执行自定义事件back |
否 |
String |
back |
url_l |
当type参数值为to,lunch,redirect必传,为跳转路由地址 |
否 |
String |
|
imgPath |
左上角自定义icon,需要自定义可传入图片本地地址或线上地址 |
否 |
String |
|
leftType |
左上角返回icon图标,有三种,normal,bend,round,如果不满足需要可以传imgPath自定义图片或使用左侧自定义插槽leftSlot |
否 |
String |
normal |
leftSize |
左侧返回图标大小,当左侧使用默认三种图标时可以改变图标大小,不需要传单位 |
否 |
Number|String |
48 |
leftIconColor |
左侧返回图标颜色,当左侧使用默认三种图标时可以改变图标颜色 |
否 |
String |
#333 |
leftIconWeight |
左侧返回图标weight,当左侧使用默认三种图标时可以改变图标weight,改变线条的粗细 |
否 |
String |
bold |
leftDistance |
不使用中间插槽时可以控制标题距左侧距离 ,默认50%居中 |
否 |
String |
50% |
自定义事件
事件名称 |
说明 |
返回参数 |
@back |
当左上角图标leftType为默认三种类型,type为custom时,点击左上角图标触发自定义事件back |
无 |
示例
默认示例
<Y-NavBar
:title="title"
>
</Y-NavBar>
<script>
export default{
data(){
return{
title:"更多主题"
}
}
}
</script>
右上角插槽示例
<Y-NavBar
:title="title"
>
<template #right>
<uni-icons @tap.stop="clickItem" type="contact" size="30"></uni-icons> //自定义部分,只是效果展示
</template>
</Y-NavBar>
<script>
export default{
data(){
return{
title:"更多主题"
}
},
methods:{
//点击事件
clickItem(){
}
}
}
</script>